<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
		<head>
			<!-- template designed by Marco Von Ballmoos -->
			<title>File Source for TpLib.php</title>
			<link rel="stylesheet" href="../media/stylesheet.css" />
			<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
		</head>
		<body>
						<h1>Source for file TpLib.php</h1>
<p>Documentation is available at <a href="../TurboPhpLib/_TpLib_php.html">TpLib.php</a></p>
<div class="src-code">
<pre><ol><li><a name="a1"></a><span class="src-php">&lt;?php</span></li>
<li><a name="a2"></a>&nbsp;</li>
<li><a name="a3"></a><span class="src-doc">/**</span></li>
<li><a name="a4"></a><span class="src-doc"> *  TurboPhp 4 - TpLib</span></li>
<li><a name="a5"></a><span class="src-doc"> *  Version 4.1 Beta</span></li>
<li><a name="a6"></a><span class="src-doc"> *</span></li>
<li><a name="a7"></a><span class="src-doc"> *  Copyright (c) 2004 Least-Resistance Software</span></li>
<li><a name="a8"></a><span class="src-doc"> *</span></li>
<li><a name="a9"></a><span class="src-doc"> *  This source file is subject to the terms of the TurboPhp license,</span></li>
<li><a name="a10"></a><span class="src-doc"> *  that is bundled with this package in the file LICENSE.TXT, and is</span></li>
<li><a name="a11"></a><span class="src-doc"> *  available at through the world-wide-web at</span></li>
<li><a name="a12"></a><span class="src-doc"> *  http://www.turbophp.com/turbophp/license.txt</span></li>
<li><a name="a13"></a><span class="src-doc"> *</span></li>
<li><a name="a14"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a15"></a><span class="src-doc"> */</span></li>
<li><a name="a16"></a>&nbsp;</li>
<li><a name="a17"></a><span class="src-doc-template">/**#@+</span></li>
<li><a name="a18"></a><span class="src-doc-template"> * </span><span class="src-doc-coretag">@access</span><span class="src-doc-template"> private</span></li>
<li><a name="a19"></a><span class="src-doc-template"> */</span></li>
<li><a name="a20"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'TPCLASS'</span><span class="src-sym">, </span><span class="src-str">'tpClass'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a21"></a>&nbsp;</li>
<li><a name="a22"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'P_STYLE'</span><span class="src-sym">, </span><span class="src-str">'#[\&quot;; ]*([^\s:]*)\s*:\s*([^;]*);#'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a23"></a>&nbsp;</li>
<li><a name="a24"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'P_BLOCK'</span><span class="src-sym">, </span><span class="src-str">'#&lt;!--BEGIN ([^-&gt;]*) --&gt;(.*)&lt;!--END \1 --&gt;#Usm'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a25"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'P_MACRO'</span><span class="src-sym">, </span><span class="src-str">'#{%([^}]*)}#Usm'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a26"></a>&nbsp;</li>
<li><a name="a27"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'TP_MACSTART'</span><span class="src-sym">, </span><span class="src-str">'{%'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a28"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'TP_MACEND'</span><span class="src-sym">, </span><span class="src-str">'}'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a29"></a>&nbsp;</li>
<li><a name="a30"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'P_INPUTCHARS'</span><span class="src-sym">, </span><span class="src-str">'/[a-zA-Z0-9\s\r\n\t\_\-\~\!\@\#\$\%\^\&amp;\*\(\)\|\+\=\{\}\[\]\,\.\;\:\'\&quot;\/\?]*/'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a31"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'P_CLEANCHARS'</span><span class="src-sym">, </span><span class="src-str">'/[a-zA-Z0-9\s\_\-\(\)\+\=\{\}\[\]\,\.\;\:]*/'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a32"></a>&nbsp;</li>
<li><a name="a33"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'TPMODULEFLAG'</span><span class="src-sym">, </span><span class="src-str">'TpModularize'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a34"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'TPPORTABLES'</span><span class="src-sym">, </span><span class="src-str">'TpPortables'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a35"></a>&nbsp;</li>
<li><a name="a39"></a><span class="src-doc-close-template">/**#@-*/</span><span class="src-comm"> * Get array element without warnings if element doesn't exist.</span></li>
<li><a name="a40"></a><span class="src-comm"> * @param $inNeedle Array key to search</span></li>
<li><a name="a41"></a><span class="src-comm"> * @param $inArray Array to search</span></li>
<li><a name="a42"></a><span class="src-comm"> * @return mixed $inArray[$inNeedle] or '' if $inNeedle is not a key of</span></li>
<li><a name="a43"></a><span class="src-comm"> * $inArray.</span></li>
<li><a name="a44"></a><span class="src-comm"> */</span></li>
<li><a name="a45"></a><span class="src-key">function </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpSafeArrayGet">TpSafeArrayGet</a><span class="src-sym">(</span><span class="src-var">$inNeedle</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inArray</span><span class="src-sym">)</span></li>
<li><a name="a46"></a><span class="src-sym">{</span></li>
<li><a name="a47"></a>  <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$inNeedle</span><span class="src-sym">, </span><span class="src-var">$inArray</span><span class="src-sym">))</span></li>
<li><a name="a48"></a>    <span class="src-key">return </span><span class="src-var">$inArray</span><span class="src-sym">[</span><span class="src-var">$inNeedle</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a49"></a>  <span class="src-key">else</span></li>
<li><a name="a50"></a>    <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a51"></a><span class="src-sym">}</span></li>
<li><a name="a52"></a>&nbsp;</li>
<li><a name="a53"></a><span class="src-doc">/**</span></li>
<li><a name="a54"></a><span class="src-doc"> * Filter characters from input text.</span></li>
<li><a name="a55"></a><span class="src-doc"> * Returns left-most part of $inText that contains basic characters only.</span></li>
<li><a name="a56"></a><span class="src-doc"> * Use this function to strip away odd characters or special bytes from user</span></li>
<li><a name="a57"></a><span class="src-doc"> * input. Less restrictive than </span><span class="src-doc-inlinetag">{@link TpCleanInput}</span><span class="src-doc">.</span></li>
<li><a name="a58"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$inText </span><span class="src-doc">String to be filtered.</span></li>
<li><a name="a59"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span><span class="src-doc">Filtered string.</span></li>
<li><a name="a60"></a><span class="src-doc"> */</span></li>
<li><a name="a61"></a><span class="src-key">function </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpFilterInput">TpFilterInput</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inText</span><span class="src-sym">)</span></li>
<li><a name="a62"></a><span class="src-sym">{</span></li>
<li><a name="a63"></a>  <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-id">P_INPUTCHARS</span><span class="src-sym">, </span><span class="src-var">$inText</span><span class="src-sym">, </span><span class="src-var">$matches</span><span class="src-sym">))</span></li>
<li><a name="a64"></a>    <span class="src-key">return </span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a65"></a>  <span class="src-key">else</span></li>
<li><a name="a66"></a>    <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a67"></a><span class="src-sym">}</span></li>
<li><a name="a68"></a>&nbsp;</li>
<li><a name="a69"></a><span class="src-doc">/**</span></li>
<li><a name="a70"></a><span class="src-doc"> * Filter characters from $_REQUEST values.</span></li>
<li><a name="a71"></a><span class="src-doc"> * Performs </span><span class="src-doc-inlinetag">{@link TpFilterInput}</span><span class="src-doc"> on each member of $_REQUEST array.</span></li>
<li><a name="a72"></a><span class="src-doc"> */</span></li>
<li><a name="a73"></a><span class="src-key">function </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpFilterRequest">TpFilterRequest</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a74"></a><span class="src-sym">{</span></li>
<li><a name="a75"></a>  <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$_REQUEST </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a76"></a>    <span class="src-var">$_REQUEST</span><span class="src-sym">[</span><span class="src-var">$name</span><span class="src-sym">] </span>= <a href="../TurboPhpLib/_TpLib_php.html#functionTpFilterInput">TpFilterInput</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a77"></a><span class="src-sym">}</span></li>
<li><a name="a78"></a>&nbsp;</li>
<li><a name="a79"></a><span class="src-doc">/**</span></li>
<li><a name="a80"></a><span class="src-doc"> * Clean characters from input text.</span></li>
<li><a name="a81"></a><span class="src-doc"> * Returns left-most part of $inText that contains basic characters only.</span></li>
<li><a name="a82"></a><span class="src-doc"> * Use this function to strip away odd characters or special bytes from user</span></li>
<li><a name="a83"></a><span class="src-doc"> * input. More restrictive than </span><span class="src-doc-inlinetag">{@link TpFilterInput}</span><span class="src-doc">.</span></li>
<li><a name="a84"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc-var">$inText </span><span class="src-doc">String to be cleaned.</span></li>
<li><a name="a85"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span><span class="src-doc">Cleaned string.</span></li>
<li><a name="a86"></a><span class="src-doc"> */</span></li>
<li><a name="a87"></a><span class="src-key">function </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpCleanInput">TpCleanInput</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inText</span><span class="src-sym">)</span></li>
<li><a name="a88"></a><span class="src-sym">{</span></li>
<li><a name="a89"></a>  <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-id">P_CLEANCHARS</span><span class="src-sym">, </span><span class="src-var">$inText</span><span class="src-sym">, </span><span class="src-var">$matches</span><span class="src-sym">))</span></li>
<li><a name="a90"></a>    <span class="src-key">return </span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a91"></a>  <span class="src-key">else</span></li>
<li><a name="a92"></a>    <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a93"></a><span class="src-sym">}</span></li>
<li><a name="a94"></a>&nbsp;</li>
<li><a name="a95"></a><span class="src-doc">/**</span></li>
<li><a name="a96"></a><span class="src-doc"> * Stores data parsed from a request variable.</span></li>
<li><a name="a97"></a><span class="src-doc"> * Request variable (GET, POST, and COOKIE) data are parsed into</span></li>
<li><a name="a98"></a><span class="src-doc"> * TTpRequestVariable objects.</span></li>
<li><a name="a99"></a><span class="src-doc"> * Information encoded into the variable text, such as hit-coordinates and</span></li>
<li><a name="a100"></a><span class="src-doc"> * control indices are parsed into fields.</span></li>
<li><a name="a101"></a><span class="src-doc"> * See </span><span class="src-doc-inlinetag">{@link TTpPage.Inputs}</span><span class="src-doc">.</span></li>
<li><a name="a102"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a103"></a><span class="src-doc"> */</span></li>
<li><a name="a104"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpRequestVariable.html">TTpRequestVariable</a></li>
<li><a name="a105"></a><span class="src-sym">{</span></li>
<li><a name="a106"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Name">$Name</a><span class="src-sym">;</span></li>
<li><a name="a107"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Index">$Index</a><span class="src-sym">;</span></li>
<li><a name="a108"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Coord">$Coord</a><span class="src-sym">;</span></li>
<li><a name="a109"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Value">$Value</a><span class="src-sym">;</span></li>
<li><a name="a110"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRequestVariable.html#var$RawName">$RawName</a><span class="src-sym">;</span></li>
<li><a name="a111"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpRequestVariable.html#methodTTpRequestVariable">TTpRequestVariable</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a112"></a>  <span class="src-sym">{</span></li>
<li><a name="a113"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$RawName">RawName</a> = <span class="src-var">$inName</span><span class="src-sym">;</span></li>
<li><a name="a114"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Value">Value</a> = <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a115"></a>    <span class="src-comm">//</span></li>
<li><a name="a116"></a>    <span class="src-var">$end </span>= <a href="http://www.php.net/strrchr">strrchr</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-str">'_'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a117"></a>    <span class="src-key">if </span><span class="src-sym">((</span><span class="src-var">$end </span>== <span class="src-str">'_x'</span><span class="src-sym">) </span>|| <span class="src-sym">(</span><span class="src-var">$end </span>== <span class="src-str">'_y'</span><span class="src-sym">))</span></li>
<li><a name="a118"></a>    <span class="src-sym">{</span></li>
<li><a name="a119"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Coord">Coord</a> = <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$end</span><span class="src-sym">, </span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a120"></a>      <span class="src-var">$inName </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-num">0</span><span class="src-sym">, </span>-<span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a121"></a>    <span class="src-sym">}</span></li>
<li><a name="a122"></a>    <span class="src-comm">//</span></li>
<li><a name="a123"></a>    <span class="src-var">$parts </span>= <a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">'__'</span><span class="src-sym">, </span><span class="src-var">$inName</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a124"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Name">Name</a> = <span class="src-var">$parts</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a125"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$parts</span><span class="src-sym">) </span>&gt; <span class="src-num">1</span><span class="src-sym">)</span></li>
<li><a name="a126"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Index">Index</a> = (integer)<span class="src-var">$parts</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a127"></a>    <span class="src-key">else</span></li>
<li><a name="a128"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRequestVariable.html#var$Index">Index</a> = <span class="src-num">0</span><span class="src-sym">;</span></li>
<li><a name="a129"></a>  <span class="src-sym">}</span></li>
<li><a name="a130"></a><span class="src-sym">}</span></li>
<li><a name="a131"></a>&nbsp;</li>
<li><a name="a132"></a><span class="src-doc">/**</span></li>
<li><a name="a133"></a><span class="src-doc"> * Page object.</span></li>
<li><a name="a134"></a><span class="src-doc"> * Implements the TurboPhp page framework, including parsing the input</span></li>
<li><a name="a135"></a><span class="src-doc"> * template, handling input, and generating HTML.</span></li>
<li><a name="a136"></a><span class="src-doc"> * The behaviour of the page is customized by attaching event handlers.</span></li>
<li><a name="a137"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a138"></a><span class="src-doc"> */</span></li>
<li><a name="a139"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpPage.html">TTpPage</a> <span class="src-key">extends </span><span class="src-id">TTpHtmlParser</span></li>
<li><a name="a140"></a><span class="src-sym">{</span></li>
<li><a name="a141"></a>  <span class="src-doc">/**</span></li>
<li><a name="a142"></a><span class="src-doc">   * Array of named macro expansions.</span></li>
<li><a name="a143"></a><span class="src-doc">   * When generating HTML, encountered macros of the form {%MacroName} are</span></li>
<li><a name="a144"></a><span class="src-doc">   * replaced by matching blocks from this array. E.g. {%MacroName}</span></li>
<li><a name="a145"></a><span class="src-doc">   * is replaced by &lt;var&gt;$Blocks['MacroName']&lt;/var&gt;.</span></li>
<li><a name="a146"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a147"></a><span class="src-doc">   */</span></li>
<li><a name="a148"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">$Blocks</a><span class="src-sym">;</span></li>
<li><a name="a149"></a>  <span class="src-doc">/**</span></li>
<li><a name="a150"></a><span class="src-doc">   * Enable debugging output.</span></li>
<li><a name="a151"></a><span class="src-doc">   * If false, debugging output is suppressed.</span></li>
<li><a name="a152"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a153"></a><span class="src-doc">   */</span></li>
<li><a name="a154"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$Debug">$Debug</a><span class="src-sym">;</span></li>
<li><a name="a155"></a>  <span class="src-doc">/**</span></li>
<li><a name="a156"></a><span class="src-doc">   * Control debugging output. See also </span><span class="src-doc-inlinetag">{@link Debug}</span><span class="src-doc">.</span></li>
<li><a name="a157"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a158"></a><span class="src-doc">   */</span></li>
<li><a name="a159"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$DebugFlags">$DebugFlags</a><span class="src-sym">;</span></li>
<li><a name="a160"></a>  <span class="src-doc">/**</span></li>
<li><a name="a161"></a><span class="src-doc">   * Halt generation.</span></li>
<li><a name="a162"></a><span class="src-doc">   * If true, the page returns from the </span><span class="src-doc-inlinetag">{@link Generate}</span><span class="src-doc"> function without</span></li>
<li><a name="a163"></a><span class="src-doc">   * further processing.</span></li>
<li><a name="a164"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a165"></a><span class="src-doc">   */</span></li>
<li><a name="a166"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$Handled">$Handled</a><span class="src-sym">;</span></li>
<li><a name="a167"></a>  <span class="src-doc">/**</span></li>
<li><a name="a168"></a><span class="src-doc">   * Array of named objects.</span></li>
<li><a name="a169"></a><span class="src-doc">   * TurboPhp objects managed by the page are stored in this array.</span></li>
<li><a name="a170"></a><span class="src-doc">   * All members of this array must derive from </span><span class="src-doc-inlinetag">{@link TTpObj}</span><span class="src-doc">.</span></li>
<li><a name="a171"></a><span class="src-doc">   *</span></li>
<li><a name="a172"></a><span class="src-doc">   * &lt;b&gt;Warning:&lt;/b&gt; be careful accessing this array; objects must always be</span></li>
<li><a name="a173"></a><span class="src-doc">   * accessed by reference. Use methods </span><span class="src-doc-inlinetag">{@link IsObject}</span><span class="src-doc"> or </span><span class="src-doc-inlinetag">{@link GetObject}</span></li>
<li><a name="a174"></a><span class="src-doc">   * instead.</span></li>
<li><a name="a175"></a><span class="src-doc">   *</span></li>
<li><a name="a176"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a177"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> protected</span></li>
<li><a name="a178"></a><span class="src-doc">   */</span></li>
<li><a name="a179"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$Objects">$Objects</a><span class="src-sym">;</span></li>
<li><a name="a180"></a>  <span class="src-doc">/**</span></li>
<li><a name="a181"></a><span class="src-doc">   * Name of OnBeforeInput event function.</span></li>
<li><a name="a182"></a><span class="src-doc">   * This event is fired before any input is processed.</span></li>
<li><a name="a183"></a><span class="src-doc">   *</span></li>
<li><a name="a184"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a185"></a><span class="src-doc">   */</span></li>
<li><a name="a186"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$OnBeforeInput">$OnBeforeInput</a><span class="src-sym">;</span></li>
<li><a name="a187"></a>  <span class="src-doc">/**</span></li>
<li><a name="a188"></a><span class="src-doc">   * Name of OnBeforeClicks event function.</span></li>
<li><a name="a189"></a><span class="src-doc">   * This event is fired before any clicks are processed.</span></li>
<li><a name="a190"></a><span class="src-doc">   *</span></li>
<li><a name="a191"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a192"></a><span class="src-doc">   */</span></li>
<li><a name="a193"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$OnBeforeClicks">$OnBeforeClicks</a><span class="src-sym">;</span></li>
<li><a name="a194"></a>  <span class="src-doc">/**</span></li>
<li><a name="a195"></a><span class="src-doc">   * Name of OnGenerate event function.</span></li>
<li><a name="a196"></a><span class="src-doc">   * This event is fired before output is generated.</span></li>
<li><a name="a197"></a><span class="src-doc">   *</span></li>
<li><a name="a198"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a199"></a><span class="src-doc">   */</span></li>
<li><a name="a200"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$OnGenerate">$OnGenerate</a><span class="src-sym">;</span></li>
<li><a name="a201"></a>  <span class="src-doc">/**</span></li>
<li><a name="a202"></a><span class="src-doc">   * Array of request input objects.</span></li>
<li><a name="a203"></a><span class="src-doc">   * Array of </span><span class="src-doc-inlinetag">{@link TTpRequestVariable}</span><span class="src-doc"> objects containing information</span></li>
<li><a name="a204"></a><span class="src-doc">   * parsed from the $_REQUEST array.</span></li>
<li><a name="a205"></a><span class="src-doc">   *</span></li>
<li><a name="a206"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a207"></a><span class="src-doc">   */</span></li>
<li><a name="a208"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$Inputs">$Inputs</a><span class="src-sym">;</span></li>
<li><a name="a209"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a210"></a><span class="src-comm">   * {@link TTpTemplate} object</span></li>
<li><a name="a211"></a><span class="src-comm">   *</span></li>
<li><a name="a212"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a213"></a><span class="src-comm">   * @var string</span></li>
<li><a name="a214"></a><span class="src-comm">   */</span></li>
<li><a name="a215"></a>  <span class="src-comm">//var $Template;</span></li>
<li><a name="a215"></a>  </li>
<li><a name="a216"></a>  <span class="src-doc">/**</span></li>
<li><a name="a217"></a><span class="src-doc">   * Name of template file.</span></li>
<li><a name="a218"></a><span class="src-doc">   *</span></li>
<li><a name="a219"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a220"></a><span class="src-doc">   */</span></li>
<li><a name="a221"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$TemplateFile">$TemplateFile</a><span class="src-sym">;</span></li>
<li><a name="a222"></a>  <span class="src-doc">/**</span></li>
<li><a name="a223"></a><span class="src-doc">   * Flag used to track button clicks on form input.</span></li>
<li><a name="a224"></a><span class="src-doc">   * If form input was received but no button was clicked,</span></li>
<li><a name="a225"></a><span class="src-doc">   * the form will invoke it's DefaultButton click.</span></li>
<li><a name="a226"></a><span class="src-doc">   *</span></li>
<li><a name="a227"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a228"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a229"></a><span class="src-doc">   */</span></li>
<li><a name="a230"></a>  <span class="src-key">var </span><span class="src-var">$WasButtonClick</span><span class="src-sym">;</span></li>
<li><a name="a231"></a>  <span class="src-doc">/**</span></li>
<li><a name="a232"></a><span class="src-doc">   * Flag indicating this page is being used as a module.</span></li>
<li><a name="a233"></a><span class="src-doc">   *</span></li>
<li><a name="a234"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a235"></a><span class="src-doc">   */</span></li>
<li><a name="a236"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$IsModule">$IsModule</a><span class="src-sym">;</span></li>
<li><a name="a237"></a>  <span class="src-doc">/**</span></li>
<li><a name="a238"></a><span class="src-doc">   * Number of portable header objects for merging modules.</span></li>
<li><a name="a239"></a><span class="src-doc">   *</span></li>
<li><a name="a240"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a241"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a242"></a><span class="src-doc">   */</span></li>
<li><a name="a243"></a>  <span class="src-key">var </span><span class="src-var">$PortableCount</span><span class="src-sym">;</span></li>
<li><a name="a244"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPage.html#var$LastObj">$LastObj</a><span class="src-sym">;</span></li>
<li><a name="a245"></a>&nbsp;</li>
<li><a name="a246"></a>  <span class="src-doc">/**</span></li>
<li><a name="a247"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Value to store in </span><span class="src-doc-inlinetag">{@link TemplateFile}</span><span class="src-doc">.</span></li>
<li><a name="a248"></a><span class="src-doc">   */</span></li>
<li><a name="a249"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodTTpPage">TTpPage</a><span class="src-sym">(</span><span class="src-var">$inFile</span><span class="src-sym">)</span></li>
<li><a name="a250"></a>  <span class="src-sym">{</span></li>
<li><a name="a251"></a>    <span class="src-comm">//if (isset($GLOBALS[TPMODULEFLAG]))</span></li>
<li><a name="a252"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$IsModule">IsModule</a> = <span class="src-sym">@</span><span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-id">TPMODULEFLAG</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a253"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$TemplateFile">TemplateFile</a> = <span class="src-var">$inFile</span><span class="src-sym">;</span></li>
<li><a name="a254"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a255"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a256"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Inputs">Inputs</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a257"></a><span class="src-comm">//    $this-&gt;PortableCount = 0;</span></li>
<li><a name="a258"></a><span class="src-comm">//    $this-&gt;IsModule = false;</span></li>
<li><a name="a259"></a><span class="src-comm">//    $this-&gt;RegisterClasses();</span></li>
<li><a name="a260"></a><span class="src-comm">//    $this-&gt;IsModule = true;</span></li>
<li><a name="a261"></a>  <span class="src-sym">}</span></li>
<li><a name="a262"></a>&nbsp;</li>
<li><a name="a263"></a>  <span class="src-doc">/**</span></li>
<li><a name="a264"></a><span class="src-doc">   * Fires a named event function.</span></li>
<li><a name="a265"></a><span class="src-doc">   * If &lt;var&gt;$inEvent&lt;/var&gt; is not empty, it is invoked as a function.</span></li>
<li><a name="a266"></a><span class="src-doc">   * A reference to the page is passed as a parameter.</span></li>
<li><a name="a267"></a><span class="src-doc">   *</span></li>
<li><a name="a268"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a269"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">Zero </span><span class="src-doc">if the parameter is empty, otherwise value returned</span></li>
<li><a name="a270"></a><span class="src-doc">   *  by the event function.</span></li>
<li><a name="a271"></a><span class="src-doc">   */</span></li>
<li><a name="a272"></a>  <span class="src-key">function </span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$inEvent</span><span class="src-sym">)</span></li>
<li><a name="a273"></a>  <span class="src-sym">{</span></li>
<li><a name="a274"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inEvent </span>&lt;&gt; <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a275"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inEvent</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a276"></a>    <span class="src-key">else</span></li>
<li><a name="a277"></a>      <span class="src-key">return </span><span class="src-num">0</span><span class="src-sym">;</span></li>
<li><a name="a278"></a>  <span class="src-sym">}</span></li>
<li><a name="a279"></a>&nbsp;</li>
<li><a name="a280"></a>  <span class="src-doc">/**</span></li>
<li><a name="a281"></a><span class="src-doc">   * Test for existence of a named macro block.</span></li>
<li><a name="a282"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Name of block to look for.</span></li>
<li><a name="a283"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">boolean </span><span class="src-doc">True if the block exists in this page.</span></li>
<li><a name="a284"></a><span class="src-doc">   */</span></li>
<li><a name="a285"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodIsBlock">IsBlock</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a286"></a>  <span class="src-sym">{</span></li>
<li><a name="a287"></a>    <span class="src-key">return </span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a288"></a>  <span class="src-sym">}</span></li>
<li><a name="a289"></a>&nbsp;</li>
<li><a name="a290"></a>  <span class="src-doc">/**</span></li>
<li><a name="a291"></a><span class="src-doc">   * Get the value of a named macro block.</span></li>
<li><a name="a292"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Name of block to look for.</span></li>
<li><a name="a293"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">object </span><span class="src-doc-type">Returns </span><span class="src-doc">the value of the named block if it exists,</span></li>
<li><a name="a294"></a><span class="src-doc">   *  '' otherwise.</span></li>
<li><a name="a295"></a><span class="src-doc">   */</span></li>
<li><a name="a296"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodGetBlock">GetBlock</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a297"></a>  <span class="src-sym">{</span></li>
<li><a name="a298"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsBlock">IsBlock</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">))</span></li>
<li><a name="a299"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">[</span><span class="src-var">$inName</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a300"></a>    <span class="src-key">else</span></li>
<li><a name="a301"></a>      <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a302"></a>  <span class="src-sym">}</span></li>
<li><a name="a303"></a>&nbsp;</li>
<li><a name="a304"></a>  <span class="src-doc">/**</span></li>
<li><a name="a305"></a><span class="src-doc">   * Test for existence of a named TurboPhp object.</span></li>
<li><a name="a306"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Name of object to look for.</span></li>
<li><a name="a307"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">boolean </span><span class="src-doc">True if the object exists in this page.</span></li>
<li><a name="a308"></a><span class="src-doc">   */</span></li>
<li><a name="a309"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a310"></a>  <span class="src-sym">{</span></li>
<li><a name="a311"></a>    <span class="src-key">return </span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a312"></a>  <span class="src-sym">}</span></li>
<li><a name="a313"></a>&nbsp;</li>
<li><a name="a314"></a>  <span class="src-doc">/**</span></li>
<li><a name="a315"></a><span class="src-doc">   * Get a reference to the named TurboPhp object.</span></li>
<li><a name="a316"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Name of object to look for.</span></li>
<li><a name="a317"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">TTpObj </span><span class="src-doc">Returns a reference to the named object if it exists,</span></li>
<li><a name="a318"></a><span class="src-doc">   *  false otherwise.</span></li>
<li><a name="a319"></a><span class="src-doc">   */</span></li>
<li><a name="a320"></a>  <span class="src-key">function </span><span class="src-sym">&amp;</span><a href="../TurboPhpLib/TTpPage.html#methodGetObject">GetObject</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a321"></a>  <span class="src-sym">{</span></li>
<li><a name="a322"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">))</span></li>
<li><a name="a323"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$inName</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a324"></a>    <span class="src-key">else</span></li>
<li><a name="a325"></a>    <span class="src-sym">{</span></li>
<li><a name="a326"></a><span class="src-comm">//      echo &quot;Searching [$inName] for module ownership&lt;br&gt;&quot;;</span></li>
<li><a name="a327"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-str">'#([^\.]*)\.(.*)#'</span><span class="src-sym">, </span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$matches</span><span class="src-sym">))</span></li>
<li><a name="a328"></a>      <span class="src-sym">{</span></li>
<li><a name="a329"></a><span class="src-comm">//        echo &quot;Looking for module [$matches[1]]&lt;br&gt;&quot;;</span></li>
<li><a name="a330"></a>        <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
<li><a name="a331"></a>        <span class="src-sym">{</span></li>
<li><a name="a332"></a>          <span class="src-var">$obj </span>= <span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]]</span><span class="src-sym">;</span></li>
<li><a name="a333"></a><span class="src-comm">//          echo &quot;Looking for object [$matches[1].$matches[2]]&lt;br&gt;&quot;;</span></li>
<li><a name="a334"></a>          <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">ModulePage</span><span class="src-sym">-&gt;</span><span class="src-id">IsObject</span><span class="src-sym">(</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
<li><a name="a335"></a>          <span class="src-sym">{</span></li>
<li><a name="a336"></a><span class="src-comm">//            echo &quot;Succesfully marshalled object [$matches[1].$matches[2]]&lt;br&gt;&quot;;</span></li>
<li><a name="a337"></a>            <span class="src-key">return </span><span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">ModulePage</span><span class="src-sym">-&gt;</span><span class="src-id">Objects</span><span class="src-sym">[</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]]</span><span class="src-sym">;</span></li>
<li><a name="a338"></a>          <span class="src-sym">}</span></li>
<li><a name="a339"></a>        <span class="src-sym">}</span></li>
<li><a name="a340"></a>      <span class="src-sym">}</span></li>
<li><a name="a341"></a>    <span class="src-sym">}</span></li>
<li><a name="a342"></a>    <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a343"></a>  <span class="src-sym">}</span></li>
<li><a name="a344"></a>&nbsp;</li>
<li><a name="a345"></a>  <span class="src-doc">/**</span></li>
<li><a name="a346"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a347"></a><span class="src-doc">   */</span></li>
<li><a name="a348"></a>  <span class="src-key">function </span><span class="src-id">AddObject</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">)</span></li>
<li><a name="a349"></a>  <span class="src-sym">{</span></li>
<li><a name="a350"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$LastObj">LastObj</a> = <span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">;</span></li>
<li><a name="a351"></a>    <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Page </span>= <span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">;</span></li>
<li><a name="a352"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Name</span><span class="src-sym">)</span></li>
<li><a name="a353"></a>    <span class="src-sym">{</span></li>
<li><a name="a354"></a>      <span class="src-comm">//$GLOBALS[$inObj-&gt;Name] = &amp;$inObj;</span></li>
<li><a name="a355"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Name</span><span class="src-sym">] </span>= <span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">;</span></li>
<li><a name="a356"></a>      <span class="src-comm">// Experimental</span></li>
<li><a name="a357"></a>      <span class="src-var">$n </span>= <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Name</span><span class="src-sym">;</span></li>
<li><a name="a358"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$n </span>= <span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">;</span></li>
<li><a name="a359"></a>    <span class="src-sym">}</span></li>
<li><a name="a360"></a>  <span class="src-sym">}</span></li>
<li><a name="a361"></a>&nbsp;</li>
<li><a name="a362"></a>  <span class="src-doc">/**</span></li>
<li><a name="a363"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a364"></a><span class="src-doc">   */</span></li>
<li><a name="a365"></a>  <span class="src-key">function </span><span class="src-id">ExtractFields</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inFields</span><span class="src-sym">)</span></li>
<li><a name="a366"></a>  <span class="src-sym">{</span></li>
<li><a name="a367"></a>    <span class="src-var">$result </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a368"></a>    <span class="src-var">$v </span>= <a href="http://www.php.net/get_object_vars">get_object_vars</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a369"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$inFields </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a370"></a>    <span class="src-sym">{</span></li>
<li><a name="a371"></a>      <span class="src-var">$t </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-num">0</span><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a372"></a>      <span class="src-var">$n </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a373"></a>      <span class="src-key">if </span><span class="src-sym">((</span><span class="src-var">$t </span>== <span class="src-str">'tp'</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">, </span><span class="src-var">$v</span><span class="src-sym">)))</span></li>
<li><a name="a374"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$n </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
<li><a name="a375"></a>      <span class="src-key">else</span></li>
<li><a name="a376"></a>        <span class="src-var">$result</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">] </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
<li><a name="a377"></a>    <span class="src-sym">}</span></li>
<li><a name="a378"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a379"></a>  <span class="src-sym">}</span></li>
<li><a name="a380"></a>&nbsp;</li>
<li><a name="a381"></a>  <span class="src-doc">/**</span></li>
<li><a name="a382"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a383"></a><span class="src-doc">   */</span></li>
<li><a name="a384"></a>  <span class="src-key">function </span><span class="src-id">ExtractPageProperties</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">)</span></li>
<li><a name="a385"></a>  <span class="src-sym">{</span></li>
<li><a name="a386"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Attributes </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ExtractFields</span><span class="src-sym">(</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a387"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$OnGenerate">OnGenerate</a> == <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a388"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$OnGenerate">OnGenerate</a> = <span class="src-sym">@</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tponrun'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a389"></a>  <span class="src-sym">}</span></li>
<li><a name="a390"></a>&nbsp;</li>
<li><a name="a391"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodGetClassName">GetClassName</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">)</span></li>
<li><a name="a392"></a>  <span class="src-sym">{</span></li>
<li><a name="a393"></a>    <span class="src-key">global </span><span class="src-var">$TpClasses</span><span class="src-sym">;</span></li>
<li><a name="a394"></a>    <span class="src-var">$class </span>= <span class="src-sym">@</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tpClass'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a395"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$class </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a396"></a>      <span class="src-var">$class </span>= <span class="src-sym">@</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tpclass'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a397"></a>    <span class="src-comm">//if (array_key_exists($class, $TpClasses))</span></li>
<li><a name="a398"></a>    <span class="src-comm">//  $class = $TpClasses[$class];</span></li>
<li><a name="a399"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/class_exists">class_exists</a><span class="src-sym">(</span><span class="src-var">$class</span><span class="src-sym">) </span>== <span class="src-id">false</span><span class="src-sym">)</span></li>
<li><a name="a400"></a>      <span class="src-var">$class </span>= <span class="src-str">'TTpObj'</span><span class="src-sym">;</span></li>
<li><a name="a401"></a>    <span class="src-key">return </span><span class="src-var">$class</span><span class="src-sym">;</span></li>
<li><a name="a402"></a>  <span class="src-sym">}</span></li>
<li><a name="a403"></a>&nbsp;</li>
<li><a name="a404"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodGetObjectName">GetObjectName</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a405"></a>  <span class="src-sym">{</span></li>
<li><a name="a406"></a>    <span class="src-var">$result </span>= <span class="src-sym">@</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tpname'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a407"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$result </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a408"></a>      <span class="src-var">$result </span>= <span class="src-sym">@</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tpName'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a409"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$result </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a410"></a>      <span class="src-var">$result </span>= <span class="src-sym">@</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'name'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a411"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a412"></a>  <span class="src-sym">}</span></li>
<li><a name="a413"></a>&nbsp;</li>
<li><a name="a414"></a>  <span class="src-key">function </span><span class="src-sym">&amp;</span><a href="../TurboPhpLib/TTpPage.html#methodManufactureObject">ManufactureObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a415"></a>  <span class="src-sym">{</span></li>
<li><a name="a416"></a>    <span class="src-var">$class </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodGetClassName">GetClassName</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a417"></a>    <span class="src-var">$name </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodGetObjectName">GetObjectName</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a418"></a><span class="src-comm">//    if ($name == '')</span></li>
<li><a name="a419"></a><span class="src-comm">//    {</span></li>
<li><a name="a420"></a><span class="src-comm">//      echo &quot;&lt;pre&gt;&quot;;</span></li>
<li><a name="a421"></a><span class="src-comm">//      print_r($inTag-&gt;Attributes);</span></li>
<li><a name="a422"></a><span class="src-comm">//      echo &quot;&lt;/pre&gt;&quot;;</span></li>
<li><a name="a423"></a><span class="src-comm">//    }</span></li>
<li><a name="a424"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$name </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a425"></a>      <span class="src-key">return </span><span class="src-id">NULL</span><span class="src-sym">;</span></li>
<li><a name="a426"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$class </span>== <span class="src-str">'TTpPage'</span><span class="src-sym">)</span></li>
<li><a name="a427"></a>    <span class="src-sym">{</span></li>
<li><a name="a428"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ExtractPageProperties</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a429"></a>      <span class="src-key">return </span><span class="src-id">NULL</span><span class="src-sym">;</span></li>
<li><a name="a430"></a>    <span class="src-sym">}</span></li>
<li><a name="a431"></a>    <span class="src-key">else</span></li>
<li><a name="a432"></a>    <span class="src-sym">{</span></li>
<li><a name="a433"></a>      <span class="src-var">$obj </span>= <span class="src-key">new </span><span class="src-var">$class</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a434"></a>      <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Class </span>= <span class="src-var">$class</span><span class="src-sym">;</span></li>
<li><a name="a435"></a>      <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Name </span>= <span class="src-var">$name</span><span class="src-sym">;</span></li>
<li><a name="a436"></a>      <span class="src-key">return </span><span class="src-var">$obj</span><span class="src-sym">;</span></li>
<li><a name="a437"></a>    <span class="src-sym">}</span></li>
<li><a name="a438"></a>  <span class="src-sym">}</span></li>
<li><a name="a439"></a>&nbsp;</li>
<li><a name="a440"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a441"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a442"></a><span class="src-comm">   */</span></li>
<li><a name="a443"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractObject">ExtractObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a444"></a>  <span class="src-sym">{</span></li>
<li><a name="a445"></a>    <span class="src-var">$obj </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodManufactureObject">ManufactureObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a446"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$obj </span>== <span class="src-id">NULL</span><span class="src-sym">)</span></li>
<li><a name="a447"></a>    <span class="src-sym">{</span></li>
<li><a name="a448"></a>      <span class="src-comm">//echo &quot;NO object ... extracting children&lt;br&gt;&quot;;</span></li>
<li><a name="a449"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractChildObjects">ExtractChildObjects</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a450"></a>    <span class="src-sym">}</span></li>
<li><a name="a451"></a>    <span class="src-key">else</span></li>
<li><a name="a452"></a>    <span class="src-sym">{</span></li>
<li><a name="a453"></a>      <span class="src-comm">//echo &quot;object ok...&lt;br&gt;&quot;;</span></li>
<li><a name="a454"></a>      <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">AssignAttributes</span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a455"></a>      <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>= <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element</span><span class="src-sym">;</span></li>
<li><a name="a456"></a>      <span class="src-var">$result </span>= <span class="src-id">TP_MACSTART </span>. <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Name </span>. <span class="src-id">TP_MACEND</span><span class="src-sym">;</span></li>
<li><a name="a457"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">EndTag</span><span class="src-sym">)</span></li>
<li><a name="a458"></a>      <span class="src-sym">{</span></li>
<li><a name="a459"></a>        <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Content </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractChildObjects">ExtractChildObjects</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">) </span>. <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">EndTag</span><span class="src-sym">-&gt;</span><span class="src-id">Pre</span><span class="src-sym">;</span></li>
<li><a name="a460"></a>        <span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">EndTag </span>= <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">EndTag</span><span class="src-sym">-&gt;</span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a461"></a>      <span class="src-sym">}</span></li>
<li><a name="a462"></a>      <span class="src-key">else</span></li>
<li><a name="a463"></a>      <span class="src-sym">{</span></li>
<li><a name="a464"></a>        <span class="src-comm">//echo &quot;promoting children&lt;br&gt;&quot;;</span></li>
<li><a name="a465"></a>        <span class="src-var">$result </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractChildObjects">ExtractChildObjects</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a466"></a>      <span class="src-sym">}</span></li>
<li><a name="a467"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">AddObject</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$obj</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a468"></a>      <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a469"></a>    <span class="src-sym">}</span></li>
<li><a name="a470"></a>  <span class="src-sym">}</span></li>
<li><a name="a471"></a>&nbsp;</li>
<li><a name="a472"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a473"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a474"></a><span class="src-comm">   */</span></li>
<li><a name="a475"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a476"></a>  <span class="src-sym">{</span></li>
<li><a name="a477"></a>     <span class="src-comm">//echo &quot;Extracting special object [$inName]...&lt;br&gt;&quot;;</span></li>
<li><a name="a478"></a>     <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">ParseAttrs</span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">RawAttrs</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a479"></a>     <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">[</span><span class="src-str">'tpName'</span><span class="src-sym">] </span>= <span class="src-var">$inName</span><span class="src-sym">;</span></li>
<li><a name="a480"></a>     <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractObject">ExtractObject</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a481"></a>  <span class="src-sym">}</span></li>
<li><a name="a482"></a>&nbsp;</li>
<li><a name="a483"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a484"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a485"></a><span class="src-comm">   */</span></li>
<li><a name="a486"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractModuleObjects">ExtractModuleObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a487"></a>  <span class="src-sym">{</span></li>
<li><a name="a488"></a>    <span class="src-comm">//echo &quot;Extracting module objects...[$inTag-&gt;Element]&lt;br&gt;&quot;;</span></li>
<li><a name="a489"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'!doctype'</span><span class="src-sym">)</span></li>
<li><a name="a490"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-str">'TpDoctype'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a491"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'html'</span><span class="src-sym">)</span></li>
<li><a name="a492"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-str">'TpHtml'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a493"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'head'</span><span class="src-sym">)</span></li>
<li><a name="a494"></a>    <span class="src-sym">{</span></li>
<li><a name="a495"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-str">'TpHead'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a496"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$LastObj">LastObj</a><span class="src-sym">-&gt;</span><span class="src-id">Content </span>.= <span class="src-id">TP_MACSTART </span>. <span class="src-id">TPPORTABLES </span>. <span class="src-id">TP_MACEND</span><span class="src-sym">;</span></li>
<li><a name="a497"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">[</span><span class="src-id">TPPORTABLES</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a498"></a>    <span class="src-sym">}</span></li>
<li><a name="a499"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'body'</span><span class="src-sym">)</span></li>
<li><a name="a500"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-str">'TpBody'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a501"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">((</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'link'</span><span class="src-sym">) </span>|| <span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element </span>== <span class="src-str">'script'</span><span class="src-sym">)</span></li>
<li><a name="a502"></a>      <span class="src-comm">/*|| ($inTag-&gt;Element == 'style')*/</span></li>
<li><a name="a503"></a>      <span class="src-comm">/*|| ($inTag-&gt;Element == 'meta')*/</span></li>
<li><a name="a504"></a>      <span class="src-sym">)</span></li>
<li><a name="a505"></a>    <span class="src-sym">{</span></li>
<li><a name="a506"></a>      <span class="src-var">$n </span>= <span class="src-str">'TpPortable' </span>. ++<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">PortableCount</span><span class="src-sym">;</span></li>
<li><a name="a507"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractSpecialObject">ExtractSpecialObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">, </span><span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a508"></a>    <span class="src-sym">}</span></li>
<li><a name="a509"></a>    <span class="src-key">else</span></li>
<li><a name="a510"></a>      <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a511"></a>    <span class="src-key">return </span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Pre </span>. <span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a512"></a>  <span class="src-sym">}</span></li>
<li><a name="a513"></a>&nbsp;</li>
<li><a name="a514"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a515"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a516"></a><span class="src-comm">   */</span></li>
<li><a name="a517"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractTagObjects">ExtractTagObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a518"></a>  <span class="src-sym">{</span></li>
<li><a name="a519"></a><span class="src-comm">//    if ($this-&gt;IsModule)</span></li>
<li><a name="a520"></a>    <span class="src-sym">{</span></li>
<li><a name="a521"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractModuleObjects">ExtractModuleObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a522"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$result</span><span class="src-sym">)</span></li>
<li><a name="a523"></a>        <span class="src-key">return </span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Pre </span>. <span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a524"></a>    <span class="src-sym">}</span></li>
<li><a name="a525"></a>    <span class="src-comm">//echo &quot;Extracting tag objects...[$inTag-&gt;Element]&lt;br&gt;&quot;;</span></li>
<li><a name="a526"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">RawAttrs</span><span class="src-sym">, </span><span class="src-id">TPCLASS</span><span class="src-sym">) </span>=== <span class="src-id">false</span><span class="src-sym">)</span></li>
<li><a name="a527"></a>    <span class="src-sym">{</span></li>
<li><a name="a528"></a>      <span class="src-comm">//echo &quot;adding to result...&lt;br&gt;&quot;;</span></li>
<li><a name="a529"></a>      <span class="src-var">$result </span>=</li>
<li><a name="a530"></a>            <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a531"></a>          . <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractChildObjects">ExtractChildObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a532"></a>          . <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">GetEndTag</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a533"></a>          <span class="src-sym">;</span></li>
<li><a name="a534"></a>    <span class="src-sym">}</span></li>
<li><a name="a535"></a>    <span class="src-key">else</span></li>
<li><a name="a536"></a>    <span class="src-sym">{</span></li>
<li><a name="a537"></a>      <span class="src-comm">//echo &quot;extracting as object...&lt;br&gt;&quot;;</span></li>
<li><a name="a538"></a>      <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">ParseAttrs</span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">RawAttrs</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a539"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractObject">ExtractObject</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a540"></a>    <span class="src-sym">}</span></li>
<li><a name="a541"></a>    <span class="src-key">return </span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Pre </span>. <span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a542"></a>  <span class="src-sym">}</span></li>
<li><a name="a543"></a>&nbsp;</li>
<li><a name="a544"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a545"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a546"></a><span class="src-comm">   */</span></li>
<li><a name="a547"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractChildObjects">ExtractChildObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a548"></a>  <span class="src-sym">{</span></li>
<li><a name="a549"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a550"></a>    <span class="src-var">$c </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Tags</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a551"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$c</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
<li><a name="a552"></a>      <span class="src-var">$result </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractTagObjects">ExtractTagObjects</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Tags</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a553"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a554"></a>  <span class="src-sym">}</span></li>
<li><a name="a555"></a>&nbsp;</li>
<li><a name="a556"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a557"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a558"></a><span class="src-comm">   */</span></li>
<li><a name="a559"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodExtractObjects">ExtractObjects</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a560"></a>  <span class="src-sym">{</span></li>
<li><a name="a561"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Text </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractTagObjects">ExtractTagObjects</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Root</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a562"></a>  <span class="src-sym">}</span></li>
<li><a name="a563"></a>&nbsp;</li>
<li><a name="a564"></a>  <span class="src-doc">/**</span></li>
<li><a name="a565"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a566"></a><span class="src-doc">   */</span></li>
<li><a name="a567"></a>  <span class="src-key">function </span><span class="src-id">InterpolateObject</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a568"></a>  <span class="src-sym">{</span></li>
<li><a name="a569"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">))</span></li>
<li><a name="a570"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodInterpolate">Interpolate</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$inName</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">Generate</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a571"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsBlock">IsBlock</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">))</span></li>
<li><a name="a572"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodInterpolate">Interpolate</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">[</span><span class="src-var">$inName</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a573"></a>    <span class="src-key">return </span><span class="src-var">$inName</span><span class="src-sym">;</span></li>
<li><a name="a574"></a>  <span class="src-sym">}</span></li>
<li><a name="a575"></a>&nbsp;</li>
<li><a name="a576"></a>  <span class="src-doc">/**</span></li>
<li><a name="a577"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a578"></a><span class="src-doc">   */</span></li>
<li><a name="a579"></a>  <span class="src-key">function </span><span class="src-id">InterpolateMatchObject</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$matches</span><span class="src-sym">)</span></li>
<li><a name="a580"></a>  <span class="src-sym">{</span></li>
<li><a name="a581"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">InterpolateObject</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a582"></a>  <span class="src-sym">}</span></li>
<li><a name="a583"></a>&nbsp;</li>
<li><a name="a584"></a>  <span class="src-doc">/**</span></li>
<li><a name="a585"></a><span class="src-doc">   * Expand all object and block macros in the input text.</span></li>
<li><a name="a586"></a><span class="src-doc">   * Macro patterns of the form {%Macro} in the input text are</span></li>
<li><a name="a587"></a><span class="src-doc">   * matched against object names, then block names.</span></li>
<li><a name="a588"></a><span class="src-doc">   *</span></li>
<li><a name="a589"></a><span class="src-doc">   * Macros matching objects are replaced by text provided by the object's</span></li>
<li><a name="a590"></a><span class="src-doc">   * </span><span class="src-doc-inlinetag">{@link TTpObj.Generate()}</span><span class="src-doc"> function.</span></li>
<li><a name="a591"></a><span class="src-doc">   *</span></li>
<li><a name="a592"></a><span class="src-doc">   * Block macros are replaced by the stored block value.</span></li>
<li><a name="a593"></a><span class="src-doc">   *</span></li>
<li><a name="a594"></a><span class="src-doc">   * Note: Expanded macro patterns are interpolated recursively.</span></li>
<li><a name="a595"></a><span class="src-doc">   *</span></li>
<li><a name="a596"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Reference to input text.</span></li>
<li><a name="a597"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span><span class="src-doc">Input text with objects and macros recursively expanded.</span></li>
<li><a name="a598"></a><span class="src-doc">   */</span></li>
<li><a name="a599"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodInterpolate">Interpolate</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inText</span><span class="src-sym">)</span></li>
<li><a name="a600"></a>  <span class="src-sym">{</span></li>
<li><a name="a601"></a>    <span class="src-key">return </span><a href="http://www.php.net/preg_replace_callback">preg_replace_callback</a><span class="src-sym">(</span></li>
<li><a name="a602"></a>      <span class="src-id">P_MACRO</span><span class="src-sym">, </span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">, </span><span class="src-str">'InterpolateMatchObject'</span><span class="src-sym">)</span><span class="src-sym">, </span><span class="src-var">$inText</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a603"></a>  <span class="src-sym">}</span></li>
<li><a name="a604"></a>&nbsp;</li>
<li><a name="a605"></a>  <span class="src-doc">/**</span></li>
<li><a name="a606"></a><span class="src-doc">   * Call a method for each object in the </span><span class="src-doc-inlinetag">{@link Objects}</span><span class="src-doc"> array.</span></li>
<li><a name="a607"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Name of method to invoke.</span></li>
<li><a name="a608"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a609"></a><span class="src-doc">   */</span></li>
<li><a name="a610"></a>  <span class="src-key">function </span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-var">$inMethod</span><span class="src-sym">)</span></li>
<li><a name="a611"></a>  <span class="src-sym">{</span></li>
<li><a name="a612"></a>    <span class="src-var">$keys </span>= <a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a613"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$keys </span><span class="src-key">as </span><span class="src-var">$key</span><span class="src-sym">)</span></li>
<li><a name="a614"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-var">$inMethod</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a615"></a>  <span class="src-sym">}</span></li>
<li><a name="a616"></a>&nbsp;</li>
<li><a name="a617"></a>  <span class="src-doc">/**</span></li>
<li><a name="a618"></a><span class="src-doc">   * Perform tasks after parsing a template file.</span></li>
<li><a name="a619"></a><span class="src-doc">   * Calls AfterParse for each object in the </span><span class="src-doc-inlinetag">{@link Objects}</span><span class="src-doc"> array.</span></li>
<li><a name="a620"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a621"></a><span class="src-doc">   */</span></li>
<li><a name="a622"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a623"></a>  <span class="src-sym">{</span></li>
<li><a name="a624"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'AfterParse'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a625"></a>  <span class="src-sym">}</span></li>
<li><a name="a626"></a>&nbsp;</li>
<li><a name="a627"></a>  <span class="src-doc">/**</span></li>
<li><a name="a628"></a><span class="src-doc">   * Parse the template file.</span></li>
<li><a name="a629"></a><span class="src-doc">   * The template file is read and objects are extracted.</span></li>
<li><a name="a630"></a><span class="src-doc">   */</span></li>
<li><a name="a631"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodParseTemplate">ParseTemplate</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a632"></a>  <span class="src-sym">{</span></li>
<li><a name="a633"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ParseFile</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$TemplateFile">TemplateFile</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a634"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodExtractObjects">ExtractObjects</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a635"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a636"></a>  <span class="src-sym">}</span></li>
<li><a name="a637"></a>&nbsp;</li>
<li><a name="a638"></a>  <span class="src-doc">/**</span></li>
<li><a name="a639"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a640"></a><span class="src-doc">   */</span></li>
<li><a name="a641"></a>  <span class="src-key">function </span><span class="src-id">HaveRequest</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a642"></a>  <span class="src-sym">{</span></li>
<li><a name="a643"></a>    <span class="src-key">return </span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$_REQUEST</span><span class="src-sym">) </span>&gt; <span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a644"></a>  <span class="src-sym">}</span></li>
<li><a name="a645"></a>&nbsp;</li>
<li><a name="a646"></a>  <span class="src-doc">/**</span></li>
<li><a name="a647"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a648"></a><span class="src-doc">   */</span></li>
<li><a name="a649"></a>  <span class="src-key">function </span><span class="src-id">DoRequestForAllObjects</span><span class="src-sym">(</span><span class="src-var">$inMethod</span><span class="src-sym">)</span></li>
<li><a name="a650"></a>  <span class="src-sym">{</span></li>
<li><a name="a651"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">HaveRequest</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a652"></a>    <span class="src-sym">{</span></li>
<li><a name="a653"></a>      <span class="src-var">$keys </span>= <a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a654"></a>      <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$keys </span><span class="src-key">as </span><span class="src-var">$key</span><span class="src-sym">)</span></li>
<li><a name="a655"></a>      <span class="src-sym">{</span></li>
<li><a name="a656"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-var">$inMethod</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a657"></a>        <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Handled">Handled</a><span class="src-sym">)</span></li>
<li><a name="a658"></a>          <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a659"></a>      <span class="src-sym">}</span></li>
<li><a name="a660"></a>    <span class="src-sym">}</span></li>
<li><a name="a661"></a>  <span class="src-sym">}</span></li>
<li><a name="a662"></a>&nbsp;</li>
<li><a name="a663"></a>  <span class="src-doc">/**</span></li>
<li><a name="a664"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a665"></a><span class="src-doc">   */</span></li>
<li><a name="a666"></a>  <span class="src-key">function </span><span class="src-id">ParseInputs</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a667"></a>  <span class="src-sym">{</span></li>
<li><a name="a668"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$_REQUEST </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a669"></a>    <span class="src-sym">{</span></li>
<li><a name="a670"></a>      <span class="src-var">$input </span>= <span class="src-key">new </span><span class="src-id"><a href="../TurboPhpLib/TTpRequestVariable.html">TTpRequestVariable</a></span><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">, </span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a671"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Inputs">Inputs</a><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$input</span><span class="src-sym">;</span></li>
<li><a name="a672"></a><span class="src-comm">//      echo &quot;Input matching ($name =&gt; $value): &quot;;</span></li>
<li><a name="a673"></a><span class="src-comm">//      echo &quot;&lt;pre&gt;&quot;;</span></li>
<li><a name="a674"></a><span class="src-comm">//      print_r($input);</span></li>
<li><a name="a675"></a><span class="src-comm">//      echo &quot;&lt;/pre&gt;&quot;;</span></li>
<li><a name="a676"></a>    <span class="src-sym">}</span></li>
<li><a name="a677"></a>  <span class="src-sym">}</span></li>
<li><a name="a678"></a>&nbsp;</li>
<li><a name="a679"></a>  <span class="src-doc">/**</span></li>
<li><a name="a680"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a681"></a><span class="src-doc">   */</span></li>
<li><a name="a682"></a>  <span class="src-key">function </span><span class="src-id">ProcessInputs</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a683"></a>  <span class="src-sym">{</span></li>
<li><a name="a684"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ParseInputs</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a685"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$OnBeforeInput">OnBeforeInput</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a686"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'BeforeInput'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a687"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoRequestForAllObjects</span><span class="src-sym">(</span><span class="src-str">'ProcessInput'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a688"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'AfterInput'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a689"></a>  <span class="src-sym">}</span></li>
<li><a name="a690"></a>&nbsp;</li>
<li><a name="a691"></a>  <span class="src-doc">/**</span></li>
<li><a name="a692"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a693"></a><span class="src-doc">   */</span></li>
<li><a name="a694"></a>  <span class="src-key">function </span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a695"></a>  <span class="src-sym">{</span></li>
<li><a name="a696"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">WasButtonClick </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a697"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$OnBeforeClicks">OnBeforeClicks</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a698"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'BeforeClicks'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a699"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoRequestForAllObjects</span><span class="src-sym">(</span><span class="src-str">'ProcessClicks'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a700"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ProcessDefaultClick</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a701"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'AfterClicks'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a702"></a>  <span class="src-sym">}</span></li>
<li><a name="a703"></a>&nbsp;</li>
<li><a name="a704"></a>  <span class="src-doc">/**</span></li>
<li><a name="a705"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a706"></a><span class="src-doc">   */</span></li>
<li><a name="a707"></a>  <span class="src-key">function </span><span class="src-id">ProcessRequest</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a708"></a>  <span class="src-sym">{</span></li>
<li><a name="a709"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ProcessInputs</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a710"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a711"></a>  <span class="src-sym">}</span></li>
<li><a name="a712"></a>&nbsp;</li>
<li><a name="a713"></a>  <span class="src-doc">/**</span></li>
<li><a name="a714"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a715"></a><span class="src-doc">   */</span></li>
<li><a name="a716"></a>  <span class="src-key">function </span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a717"></a>  <span class="src-sym">{</span></li>
<li><a name="a718"></a>    <span class="src-key">return </span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">) </span>. <span class="src-str">'_'</span><span class="src-sym">;</span></li>
<li><a name="a719"></a>  <span class="src-sym">}</span></li>
<li><a name="a720"></a>&nbsp;</li>
<li><a name="a721"></a>  <span class="src-doc">/**</span></li>
<li><a name="a722"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a723"></a><span class="src-doc">   */</span></li>
<li><a name="a724"></a>  <span class="src-key">function </span><span class="src-id">ProcessDefaultClick</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a725"></a>  <span class="src-sym">{</span></li>
<li><a name="a726"></a>    <span class="src-comm">// Special form-identifying input</span></li>
<li><a name="a727"></a>    <span class="src-var">$form_var </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">) </span>. <span class="src-str">'tpsubmit'</span><span class="src-sym">;</span></li>
<li><a name="a728"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$form_var</span><span class="src-sym">, </span><span class="src-var">$_REQUEST</span><span class="src-sym">))</span></li>
<li><a name="a729"></a>    <span class="src-sym">{</span></li>
<li><a name="a730"></a>      <span class="src-var">$n </span>= <span class="src-var">$_REQUEST</span><span class="src-sym">[</span><span class="src-var">$form_var</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a731"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">))</span></li>
<li><a name="a732"></a>      <span class="src-sym">{</span></li>
<li><a name="a733"></a>        <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">WasButtonClick</span><span class="src-sym">)</span></li>
<li><a name="a734"></a>        <span class="src-sym">{</span></li>
<li><a name="a735"></a>          <span class="src-var">$b </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">DefaultButton</span><span class="src-sym">;</span></li>
<li><a name="a736"></a>          <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodIsObject">IsObject</a><span class="src-sym">(</span><span class="src-var">$b</span><span class="src-sym">))</span></li>
<li><a name="a737"></a>            <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$b</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a738"></a>        <span class="src-sym">}</span></li>
<li><a name="a739"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a740"></a>      <span class="src-sym">}</span></li>
<li><a name="a741"></a>    <span class="src-sym">}</span></li>
<li><a name="a742"></a>  <span class="src-sym">}</span></li>
<li><a name="a743"></a>&nbsp;</li>
<li><a name="a744"></a>  <span class="src-doc">/**</span></li>
<li><a name="a745"></a><span class="src-doc">   * Redirect the user's browser to the input url. All other processing</span></li>
<li><a name="a746"></a><span class="src-doc">   * is stopped.</span></li>
<li><a name="a747"></a><span class="src-doc">   */</span></li>
<li><a name="a748"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodRedirect">Redirect</a><span class="src-sym">(</span><span class="src-var">$inUrl</span><span class="src-sym">)</span></li>
<li><a name="a749"></a>  <span class="src-sym">{</span></li>
<li><a name="a750"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inUrl </span>&lt;&gt; <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a751"></a>    <span class="src-sym">{</span></li>
<li><a name="a752"></a>      <a href="http://www.php.net/header">header</a><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-id">Location</span>: <span class="src-var">$inUrl</span></span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a753"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Handled">Handled</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a754"></a>    <span class="src-sym">}</span></li>
<li><a name="a755"></a>  <span class="src-sym">}</span></li>
<li><a name="a756"></a>&nbsp;</li>
<li><a name="a757"></a>  <span class="src-doc">/**</span></li>
<li><a name="a758"></a><span class="src-doc">   * Process input request and returns generated output.</span></li>
<li><a name="a759"></a><span class="src-doc">   * Fires events as needed.</span></li>
<li><a name="a760"></a><span class="src-doc">   */</span></li>
<li><a name="a761"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodGenerate">Generate</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a762"></a>  <span class="src-sym">{</span></li>
<li><a name="a763"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ProcessRequest</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a764"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">'BeforeGeneratePage'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a765"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$OnGenerate">OnGenerate</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a766"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Handled">Handled</a><span class="src-sym">)</span></li>
<li><a name="a767"></a>    <span class="src-sym">{</span></li>
<li><a name="a768"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$IsModule">IsModule</a><span class="src-sym">)</span></li>
<li><a name="a769"></a>        <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodInterpolate">Interpolate</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">TpBody</span><span class="src-sym">-&gt;</span><span class="src-id">Content</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a770"></a>      <span class="src-key">else</span></li>
<li><a name="a771"></a>        <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodInterpolate">Interpolate</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Text</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a772"></a>    <span class="src-sym">}</span></li>
<li><a name="a773"></a>    <span class="src-key">else</span></li>
<li><a name="a774"></a>      <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a775"></a>  <span class="src-sym">}</span></li>
<li><a name="a776"></a>&nbsp;</li>
<li><a name="a777"></a>  <span class="src-doc">/**</span></li>
<li><a name="a778"></a><span class="src-doc">   * Run the TurboPhp application.</span></li>
<li><a name="a779"></a><span class="src-doc">   * Process all input and generate output.</span></li>
<li><a name="a780"></a><span class="src-doc">   * Fires events as needed.</span></li>
<li><a name="a781"></a><span class="src-doc">   */</span></li>
<li><a name="a782"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodRun">Run</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a783"></a>  <span class="src-sym">{</span></li>
<li><a name="a784"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodParseTemplate">ParseTemplate</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a785"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$IsModule">IsModule</a><span class="src-sym">)</span></li>
<li><a name="a786"></a>    <span class="src-sym">{</span></li>
<li><a name="a787"></a>      echo <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodGenerate">Generate</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a788"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Debug">Debug</a><span class="src-sym">)</span></li>
<li><a name="a789"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodDebugDump">DebugDump</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a790"></a>    <span class="src-sym">}</span></li>
<li><a name="a791"></a>  <span class="src-sym">}</span></li>
<li><a name="a792"></a>&nbsp;</li>
<li><a name="a793"></a>  <span class="src-doc">/**</span></li>
<li><a name="a794"></a><span class="src-doc">   * Dump request datat to debug output.</span></li>
<li><a name="a795"></a><span class="src-doc">   */</span></li>
<li><a name="a796"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodDebugDump">DebugDump</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a797"></a>  <span class="src-sym">{</span></li>
<li><a name="a798"></a>    <span class="src-comm">//echo &quot;Debug Dump $this-&gt;DebugFlags&lt;br&gt;&quot;;</span></li>
<li><a name="a799"></a>    <a href="../TurboPhpLib/_TpDebug_php.html#functionTpDbgStart">TpDbgStart</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a800"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$DebugFlags">DebugFlags</a> <span class="src-sym">&amp; </span><span class="src-num">0x02</span><span class="src-sym">)</span></li>
<li><a name="a801"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodDumpRequest">DumpRequest</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a802"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$DebugFlags">DebugFlags</a> <span class="src-sym">&amp; </span><span class="src-num">0x01</span><span class="src-sym">)</span></li>
<li><a name="a803"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodDumpObjects">DumpObjects</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a804"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$DebugFlags">DebugFlags</a> <span class="src-sym">&amp; </span><span class="src-num">0x04</span><span class="src-sym">)</span></li>
<li><a name="a805"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodDumpBlocks">DumpBlocks</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a806"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$DebugFlags">DebugFlags</a> <span class="src-sym">&amp; </span><span class="src-num">0x08</span><span class="src-sym">)</span></li>
<li><a name="a807"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodDumpTags">DumpTags</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a808"></a>    <a href="../TurboPhpLib/_TpDebug_php.html#functionTpDbgEnd">TpDbgEnd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a809"></a>  <span class="src-sym">}</span></li>
<li><a name="a810"></a>&nbsp;</li>
<li><a name="a811"></a>  <span class="src-doc">/**</span></li>
<li><a name="a812"></a><span class="src-doc">   * Dump request datat to debug output.</span></li>
<li><a name="a813"></a><span class="src-doc">   */</span></li>
<li><a name="a814"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodDumpRequest">DumpRequest</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a815"></a>  <span class="src-sym">{</span></li>
<li><a name="a816"></a>    echo <span class="src-str">&quot;{!}Request&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a817"></a>    <a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$_REQUEST</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a818"></a>    echo <span class="src-str">&quot;&lt;br&gt;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a819"></a>  <span class="src-sym">}</span></li>
<li><a name="a820"></a>&nbsp;</li>
<li><a name="a821"></a>  <span class="src-doc">/**</span></li>
<li><a name="a822"></a><span class="src-doc">   * Dump all objects to debug output.</span></li>
<li><a name="a823"></a><span class="src-doc">   */</span></li>
<li><a name="a824"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodDumpObjects">DumpObjects</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a825"></a>  <span class="src-sym">{</span></li>
<li><a name="a826"></a>    <span class="src-var">$c </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Objects">Objects</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a827"></a>    echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">{</span>!<span class="src-sym">}</span><span class="src-id">Objects</span> (<span class="src-var">$c</span>)&lt;<span class="src-id">br</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a828"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoForAllObjects</span><span class="src-sym">(</span><span class="src-str">&quot;Dump&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a829"></a>    echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a830"></a>  <span class="src-sym">}</span></li>
<li><a name="a831"></a>&nbsp;</li>
<li><a name="a832"></a>  <span class="src-doc">/**</span></li>
<li><a name="a833"></a><span class="src-doc">   * Dump all blocks to debug output.</span></li>
<li><a name="a834"></a><span class="src-doc">   */</span></li>
<li><a name="a835"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodDumpBlocks">DumpBlocks</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a836"></a>  <span class="src-sym">{</span></li>
<li><a name="a837"></a>    echo <span class="src-str">&quot;{!}Blocks (&quot;</span>.<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">)</span>.<span class="src-str">&quot;)&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a838"></a>    <span class="src-var">$keys </span>= <a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a839"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$keys </span><span class="src-key">as </span><span class="src-var">$key</span><span class="src-sym">)</span></li>
<li><a name="a840"></a>    <span class="src-sym">{</span></li>
<li><a name="a841"></a>      echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">{</span>+<span class="src-sym">}</span><span class="src-var">$key</span>&lt;<span class="src-id">br</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a842"></a>      echo <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Blocks">Blocks</a><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span>.<span class="src-str">&quot;&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a843"></a>      <span class="src-comm">//echo htmlspecialchars($blk);</span></li>
<li><a name="a844"></a>      echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a845"></a>    <span class="src-sym">}</span></li>
<li><a name="a846"></a>    echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a847"></a>  <span class="src-sym">}</span></li>
<li><a name="a848"></a>&nbsp;</li>
<li><a name="a849"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpPage.html#methodDumpTags">DumpTags</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a850"></a>  <span class="src-sym">{</span></li>
<li><a name="a851"></a>    echo <span class="src-str">&quot;{!}Tags&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a852"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Root</span><span class="src-sym">-&gt;</span><span class="src-id">DumpLevel</span><span class="src-sym">(</span><span class="src-num">999</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a853"></a>    echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a854"></a>  <span class="src-sym">}</span></li>
<li><a name="a855"></a><span class="src-sym">}</span></li>
<li><a name="a856"></a>&nbsp;</li>
<li><a name="a857"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a858"></a><span class="src-comm"># | TpObj                                                                |</span></li>
<li><a name="a859"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a860"></a>&nbsp;</li>
<li><a name="a859"></a>&nbsp;</li>
<li><a name="a860"></a>&nbsp;</li>
<li><a name="a861"></a><span class="src-doc">/**</span></li>
<li><a name="a862"></a><span class="src-doc"> * Base class for TurboPhp objects.</span></li>
<li><a name="a863"></a><span class="src-doc"> * A TTpObj is created for each marked-up HTML element in the template.</span></li>
<li><a name="a864"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a865"></a><span class="src-doc"> */</span></li>
<li><a name="a866"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpObj.html">TTpObj</a></li>
<li><a name="a867"></a><span class="src-sym">{</span></li>
<li><a name="a868"></a>  <span class="src-doc">/**</span></li>
<li><a name="a869"></a><span class="src-doc">   * Reference to the owning </span><span class="src-doc-inlinetag">{@link TTpPage}</span><span class="src-doc"> object.</span></li>
<li><a name="a870"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">TTpPage </span></li>
<li><a name="a871"></a><span class="src-doc">   */</span></li>
<li><a name="a872"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Page">$Page</a><span class="src-sym">;</span></li>
<li><a name="a873"></a>  <span class="src-doc">/**</span></li>
<li><a name="a874"></a><span class="src-doc">   * Name of this object.</span></li>
<li><a name="a875"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a876"></a><span class="src-doc">   */</span></li>
<li><a name="a877"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Name">$Name</a><span class="src-sym">;</span></li>
<li><a name="a878"></a>  <span class="src-doc">/**</span></li>
<li><a name="a879"></a><span class="src-doc">   * Name of the TurboPhp class for this object.</span></li>
<li><a name="a880"></a><span class="src-doc">   * &lt;b&gt;Note&lt;/b&gt;: the TurboPhp class is not necessarily the same as the actual</span></li>
<li><a name="a881"></a><span class="src-doc">   * PHP class.</span></li>
<li><a name="a882"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a883"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a884"></a><span class="src-doc">   */</span></li>
<li><a name="a885"></a>  <span class="src-key">var </span><span class="src-var">$Class</span><span class="src-sym">;</span></li>
<li><a name="a886"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a887"></a><span class="src-comm">   * Enable debugging output.</span></li>
<li><a name="a888"></a><span class="src-comm">   * If false, debugging output is suppressed for this object.</span></li>
<li><a name="a889"></a><span class="src-comm">   * @var boolean</span></li>
<li><a name="a890"></a><span class="src-comm">   */</span></li>
<li><a name="a891"></a><span class="src-comm">//  var $DebugFlag;</span></li>
<li><a name="a892"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a893"></a><span class="src-comm">   * Element for this control's HTML tag.</span></li>
<li><a name="a894"></a><span class="src-comm">   * Every TTpObject corresponds to an HTML tag  (e.g. td, div, input, etc.).</span></li>
<li><a name="a895"></a><span class="src-comm">   * $Elt contains the tag element.</span></li>
<li><a name="a896"></a><span class="src-comm">   * @var string</span></li>
<li><a name="a897"></a><span class="src-comm">   */</span></li>
<li><a name="a898"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Element">$Element</a><span class="src-sym">;</span></li>
<li><a name="a899"></a>  <span class="src-doc">/**</span></li>
<li><a name="a900"></a><span class="src-doc">   * Array of HTML attributes (name/value pairs).</span></li>
<li><a name="a901"></a><span class="src-doc">   * Attributes are encoded using XHTML standards (i.e. attribute names</span></li>
<li><a name="a902"></a><span class="src-doc">   * are all lowercase).</span></li>
<li><a name="a903"></a><span class="src-doc">   *</span></li>
<li><a name="a904"></a><span class="src-doc">   * Change attributes by setting array values, e.g.,</span></li>
<li><a name="a905"></a><span class="src-doc">   * &lt;code&gt;Attributes['bgcolor'] = 'green';&lt;/code&gt;</span></li>
<li><a name="a906"></a><span class="src-doc">   * Clear an attribute by</span></li>
<li><a name="a907"></a><span class="src-doc">   * &lt;code&gt;Attributes['bgcolor'] = '';&lt;/code&gt;</span></li>
<li><a name="a908"></a><span class="src-doc">   * or</span></li>
<li><a name="a909"></a><span class="src-doc">   * &lt;code&gt;unset($object-&gt;Attributes['bgcolor']);&lt;/code&gt;</span></li>
<li><a name="a910"></a><span class="src-doc">   * Attributes that don't have values should be encoded XHTML style, e.g.</span></li>
<li><a name="a911"></a><span class="src-doc">   * &lt;code&gt;Attributes['readonly'] = 'readonly'&lt;/code&gt;</span></li>
<li><a name="a912"></a><span class="src-doc">   * &lt;b&gt;Note&lt;/b&gt;: avoid setting the &lt;i&gt;style&lt;/i&gt; attribute using Attributes</span></li>
<li><a name="a913"></a><span class="src-doc">   * array. Instead, put style entities into the </span><span class="src-doc-inlinetag">{@link Styles}</span><span class="src-doc"> array.</span></li>
<li><a name="a914"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a915"></a><span class="src-doc">   */</span></li>
<li><a name="a916"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">$Attributes</a><span class="src-sym">;</span></li>
<li><a name="a917"></a>  <span class="src-doc">/**</span></li>
<li><a name="a918"></a><span class="src-doc">   * The contents of the &lt;i&gt;style&lt;/i&gt; attribute as parsed from the template.</span></li>
<li><a name="a919"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a920"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a921"></a><span class="src-doc">   */</span></li>
<li><a name="a922"></a>  <span class="src-key">var </span><span class="src-var">$Style</span><span class="src-sym">;</span></li>
<li><a name="a923"></a>  <span class="src-doc">/**</span></li>
<li><a name="a924"></a><span class="src-doc">   * Array of style attributes (name/value pairs).</span></li>
<li><a name="a925"></a><span class="src-doc">   * Change attributes by setting array values, e.g.,</span></li>
<li><a name="a926"></a><span class="src-doc">   * &lt;code&gt;Styles['background-color'] = 'green';&lt;/code&gt;</span></li>
<li><a name="a927"></a><span class="src-doc">   * Clear an attribute by</span></li>
<li><a name="a928"></a><span class="src-doc">   * &lt;code&gt;Styles['background-color'] = '';&lt;/code&gt;</span></li>
<li><a name="a929"></a><span class="src-doc">   * or</span></li>
<li><a name="a930"></a><span class="src-doc">   * &lt;code&gt;unset($object-&gt;Styles['background-color']);&lt;/code&gt;</span></li>
<li><a name="a931"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a932"></a><span class="src-doc">   */</span></li>
<li><a name="a933"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Styles">$Styles</a><span class="src-sym">;</span></li>
<li><a name="a934"></a>  <span class="src-doc">/**</span></li>
<li><a name="a935"></a><span class="src-doc">   * The content of the HTML tag.</span></li>
<li><a name="a936"></a><span class="src-doc">   * Holds the text that will be output between</span></li>
<li><a name="a937"></a><span class="src-doc">   * the element tags: &lt;i&gt;&lt;tag&gt;&lt;b&gt;content&lt;/b&gt;&lt;/tag&gt;&lt;/i&gt;</span></li>
<li><a name="a938"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a939"></a><span class="src-doc">   */</span></li>
<li><a name="a940"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Content">$Content</a><span class="src-sym">;</span></li>
<li><a name="a941"></a>  <span class="src-doc">/**</span></li>
<li><a name="a942"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a943"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a944"></a><span class="src-doc">   */</span></li>
<li><a name="a945"></a>  <span class="src-key">var </span><span class="src-var">$EndTag</span><span class="src-sym">;</span></li>
<li><a name="a946"></a>  <span class="src-doc">/**</span></li>
<li><a name="a947"></a><span class="src-doc">   * True to hide the object.</span></li>
<li><a name="a948"></a><span class="src-doc">   * If true, this object's HTML is not written</span></li>
<li><a name="a949"></a><span class="src-doc">   * to the output.</span></li>
<li><a name="a950"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a951"></a><span class="src-doc">   */</span></li>
<li><a name="a952"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$Hidden">$Hidden</a><span class="src-sym">;</span></li>
<li><a name="a953"></a>  <span class="src-doc">/**</span></li>
<li><a name="a954"></a><span class="src-doc">   * Name of OnGenerate event function.</span></li>
<li><a name="a955"></a><span class="src-doc">   * This event is fired from </span><span class="src-doc-inlinetag">{@link Generate}</span><span class="src-doc"> before output</span></li>
<li><a name="a956"></a><span class="src-doc">   * is generated for this object.</span></li>
<li><a name="a957"></a><span class="src-doc">   * This event may be fired multiple times if the object is used more than</span></li>
<li><a name="a958"></a><span class="src-doc">   * once in the page. For example, a label object in a </span><span class="src-doc-inlinetag">{@link TTpRepeater}</span></li>
<li><a name="a959"></a><span class="src-doc">   * will be generated once for each repeat.</span></li>
<li><a name="a960"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a961"></a><span class="src-doc">   */</span></li>
<li><a name="a962"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$OnGenerate">$OnGenerate</a><span class="src-sym">;</span></li>
<li><a name="a963"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpObj.html#var$RawAttrs">$RawAttrs</a><span class="src-sym">;</span></li>
<li><a name="a964"></a>  <span class="src-doc">/**</span></li>
<li><a name="a965"></a><span class="src-doc">   * Calls the </span><span class="src-doc-inlinetag">{@link Init}</span><span class="src-doc"> method.</span></li>
<li><a name="a966"></a><span class="src-doc">   * Subclasses generally perform initialization</span></li>
<li><a name="a967"></a><span class="src-doc">   * duties in an overriden </span><span class="src-doc-inlinetag">{@link Init}</span><span class="src-doc"> method instead of in constructors</span></li>
<li><a name="a968"></a><span class="src-doc">   * to avoid object referencing problems.</span></li>
<li><a name="a969"></a><span class="src-doc">   */</span></li>
<li><a name="a970"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a971"></a>  <span class="src-sym">{</span></li>
<li><a name="a972"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a973"></a>  <span class="src-sym">}</span></li>
<li><a name="a974"></a>&nbsp;</li>
<li><a name="a975"></a>  <span class="src-doc">/**</span></li>
<li><a name="a976"></a><span class="src-doc">   * Perform initialization tasks.</span></li>
<li><a name="a977"></a><span class="src-doc">   * Subclasses generally perform initialization</span></li>
<li><a name="a978"></a><span class="src-doc">   * duties in redefined Init methods instead of constructors</span></li>
<li><a name="a979"></a><span class="src-doc">   * to avoid object referencing problems.</span></li>
<li><a name="a980"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a981"></a><span class="src-doc">   */</span></li>
<li><a name="a982"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a983"></a>  <span class="src-sym">{</span></li>
<li><a name="a984"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a985"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a986"></a>  <span class="src-sym">}</span></li>
<li><a name="a987"></a>&nbsp;</li>
<li><a name="a988"></a>  <span class="src-doc">/**</span></li>
<li><a name="a989"></a><span class="src-doc">   * Assign the attributes of &lt;var&gt;$inObj&lt;/var&gt; to this object.</span></li>
<li><a name="a990"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">TTpObj </span><span class="src-doc">Reference to object whose attributes are to be copied.</span></li>
<li><a name="a991"></a><span class="src-doc">   */</span></li>
<li><a name="a992"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodAssign">Assign</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">)</span></li>
<li><a name="a993"></a>  <span class="src-sym">{</span></li>
<li><a name="a994"></a>    echo <span class="src-str">&quot;Assigning [&quot; </span>. <a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$inObj</span><span class="src-sym">) </span>.<span class="src-str">&quot;]&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a995"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a> = <span class="src-sym">&amp;</span><span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Page</span><span class="src-sym">;</span></li>
<li><a name="a996"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Class </span>= <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Class</span><span class="src-sym">;</span></li>
<li><a name="a997"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Name</span><span class="src-sym">;</span></li>
<li><a name="a998"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Element">Element</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Elementt</span><span class="src-sym">;</span></li>
<li><a name="a999"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes</span><span class="src-sym">;</span></li>
<li><a name="a1000"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Style </span>= <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Style</span><span class="src-sym">;</span></li>
<li><a name="a1001"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Styles</span><span class="src-sym">;</span></li>
<li><a name="a1002"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Content</span><span class="src-sym">;</span></li>
<li><a name="a1003"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag </span>= <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">EndTag</span><span class="src-sym">;</span></li>
<li><a name="a1004"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Hidden">Hidden</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">Hidden</span><span class="src-sym">;</span></li>
<li><a name="a1005"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$OnGenerate">OnGenerate</a> = <span class="src-var">$inObj</span><span class="src-sym">-&gt;</span><span class="src-id">OnGenerate</span><span class="src-sym">;</span></li>
<li><a name="a1006"></a>  <span class="src-sym">}</span></li>
<li><a name="a1007"></a>&nbsp;</li>
<li><a name="a1008"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1009"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1010"></a><span class="src-doc">   */</span></li>
<li><a name="a1011"></a>  <span class="src-key">function </span><span class="src-id">DebugId</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1012"></a>  <span class="src-sym">{</span></li>
<li><a name="a1013"></a>    <span class="src-key">return </span><span class="src-str">&quot;</span><span class="src-str">(<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Class</span>) <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a>: </span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1014"></a>  <span class="src-sym">}</span></li>
<li><a name="a1015"></a>&nbsp;</li>
<li><a name="a1016"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1017"></a><span class="src-doc">   * Output a single line message to the debugging console.</span></li>
<li><a name="a1018"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Message to output.</span></li>
<li><a name="a1019"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">boolean </span><span class="src-doc">True to prepend a full stack trace to the debug output.</span></li>
<li><a name="a1020"></a><span class="src-doc">   *  Otherwise only the calling function is identified.</span></li>
<li><a name="a1021"></a><span class="src-doc">   */</span></li>
<li><a name="a1022"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodDebug">Debug</a><span class="src-sym">(</span><span class="src-var">$inMsg</span><span class="src-sym">, </span><span class="src-var">$inFullTrace </span>= <span class="src-id">false</span><span class="src-sym">)</span></li>
<li><a name="a1023"></a>  <span class="src-sym">{</span></li>
<li><a name="a1024"></a>    <span class="src-comm">//if (($this-&gt;App-&gt;Debug) &amp;&amp; ($this-&gt;DebugFlag))</span></li>
<li><a name="a1025"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#var$Debug">Debug</a><span class="src-sym">)</span></li>
<li><a name="a1026"></a>    <span class="src-sym">{</span></li>
<li><a name="a1027"></a>      <a href="../TurboPhpLib/_TpDebug_php.html#functionTpDbgMsg">TpDbgMsg</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DebugId</span><span class="src-sym">(</span><span class="src-sym">) </span>. <span class="src-str">&quot;[&quot; </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">StackTrace</span><span class="src-sym">(</span><span class="src-var">$inFullTrace</span><span class="src-sym">) </span>.<span class="src-str">&quot;]&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1028"></a>      <a href="../TurboPhpLib/_TpDebug_php.html#functionTpDbgMsg">TpDbgMsg</a><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str"> ==&gt; <span class="src-var">$inMsg</span></span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1029"></a>    <span class="src-sym">}</span></li>
<li><a name="a1030"></a>  <span class="src-sym">}</span></li>
<li><a name="a1031"></a>&nbsp;</li>
<li><a name="a1032"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1033"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1034"></a><span class="src-doc">   */</span></li>
<li><a name="a1035"></a>  <span class="src-key">function </span><span class="src-id">StackTrace</span><span class="src-sym">(</span><span class="src-var">$inFullTrace </span>= <span class="src-id">false</span><span class="src-sym">)</span></li>
<li><a name="a1036"></a>  <span class="src-sym">{</span></li>
<li><a name="a1037"></a>    <span class="src-var">$s </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1038"></a>    <span class="src-var">$bt </span>= <a href="http://www.php.net/debug_backtrace">debug_backtrace</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1039"></a>    <span class="src-var">$c </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$bt</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1040"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$c </span>&gt; <span class="src-num">2</span><span class="src-sym">)</span></li>
<li><a name="a1041"></a>      <span class="src-var">$s </span>= <span class="src-var">$bt</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">&quot;function&quot;</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1042"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inFullTrace</span><span class="src-sym">)</span></li>
<li><a name="a1043"></a>      <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">3</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$c</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
<li><a name="a1044"></a>        <span class="src-var">$s </span>= <span class="src-var">$s</span>.<span class="src-str">'/'</span>.<span class="src-var">$bt</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">&quot;function&quot;</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1045"></a>    <span class="src-key">return </span><span class="src-var">$s</span><span class="src-sym">;</span></li>
<li><a name="a1046"></a>  <span class="src-sym">}</span></li>
<li><a name="a1047"></a>&nbsp;</li>
<li><a name="a1048"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1049"></a><span class="src-doc">   * Fires a named event function.</span></li>
<li><a name="a1050"></a><span class="src-doc">   * If &lt;var&gt;$inEvent&lt;/var&gt; is not empty, it is invoked as a function.</span></li>
<li><a name="a1051"></a><span class="src-doc">   * A reference to the page is passed as a parameter.</span></li>
<li><a name="a1052"></a><span class="src-doc">   *</span></li>
<li><a name="a1053"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1054"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">Zero </span><span class="src-doc">if the parameter is empty, otherwise returns the value</span></li>
<li><a name="a1055"></a><span class="src-doc">   *  of the event function.</span></li>
<li><a name="a1056"></a><span class="src-doc">   */</span></li>
<li><a name="a1057"></a>  <span class="src-key">function </span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$inEvent</span><span class="src-sym">)</span></li>
<li><a name="a1058"></a>  <span class="src-sym">{</span></li>
<li><a name="a1059"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inEvent </span>&lt;&gt; <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1060"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-var">$inEvent</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1061"></a>    <span class="src-key">else</span></li>
<li><a name="a1062"></a>      <span class="src-key">return </span><span class="src-num">0</span><span class="src-sym">;</span></li>
<li><a name="a1063"></a>  <span class="src-sym">}</span></li>
<li><a name="a1064"></a>&nbsp;</li>
<li><a name="a1065"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1066"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1067"></a><span class="src-doc">   */</span></li>
<li><a name="a1068"></a>  <span class="src-key">function </span><span class="src-id">ExtractStyles</span><span class="src-sym">(</span><span class="src-var">$inStyles</span><span class="src-sym">)</span></li>
<li><a name="a1069"></a>  <span class="src-sym">{</span></li>
<li><a name="a1070"></a>    <span class="src-var">$result </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1071"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/preg_match_all">preg_match_all</a><span class="src-sym">(</span><span class="src-id">P_STYLE</span><span class="src-sym">, </span><span class="src-var">$inStyles</span><span class="src-sym">, </span><span class="src-var">$matches</span><span class="src-sym">, </span><span class="src-id">PREG_SET_ORDER</span><span class="src-sym">))</span></li>
<li><a name="a1072"></a>      <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$matches </span><span class="src-key">as </span><span class="src-var">$match</span><span class="src-sym">)</span></li>
<li><a name="a1073"></a>        <span class="src-var">$result</span><span class="src-sym">[</span><span class="src-var">$match</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]] </span>= <span class="src-var">$match</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1074"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a1075"></a>  <span class="src-sym">}</span></li>
<li><a name="a1076"></a>&nbsp;</li>
<li><a name="a1077"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1078"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1079"></a><span class="src-doc">   */</span></li>
<li><a name="a1080"></a>  <span class="src-key">function </span><span class="src-id">IsVar</span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a1081"></a>  <span class="src-sym">{</span></li>
<li><a name="a1082"></a>    <span class="src-key">return </span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><a href="http://www.php.net/get_object_vars">get_object_vars</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a1083"></a>  <span class="src-sym">}</span></li>
<li><a name="a1084"></a>&nbsp;</li>
<li><a name="a1085"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1086"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1087"></a><span class="src-doc">   */</span></li>
<li><a name="a1088"></a>  <span class="src-key">function </span><span class="src-id">StoreVar</span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1089"></a>  <span class="src-sym">{</span></li>
<li><a name="a1090"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">IsVar</span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">))</span></li>
<li><a name="a1091"></a>      <span class="src-key">return </span><span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a1092"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inName </span>= <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a1093"></a>    <span class="src-key">return </span><span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a1094"></a>  <span class="src-sym">}</span></li>
<li><a name="a1095"></a>&nbsp;</li>
<li><a name="a1096"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1097"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1098"></a><span class="src-doc">   */</span></li>
<li><a name="a1099"></a>  <span class="src-key">function </span><span class="src-id">AssignAttribute</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1100"></a>  <span class="src-sym">{</span></li>
<li><a name="a1101"></a><span class="src-comm">/*</span></li>
<li><a name="a1102"></a><span class="src-comm">    if ($inName == 'name')</span></li>
<li><a name="a1103"></a><span class="src-comm">      $this-&gt;Name = $inValue;</span></li>
<li><a name="a1104"></a><span class="src-comm">    else</span></li>
<li><a name="a1105"></a><span class="src-comm">    if ($inName == TPCLASS)</span></li>
<li><a name="a1106"></a><span class="src-comm">      $this-&gt;Class = $inValue;</span></li>
<li><a name="a1107"></a><span class="src-comm">    else if ($inName == TP_NAME)</span></li>
<li><a name="a1108"></a><span class="src-comm">      $this-&gt;Name = $inValue;</span></li>
<li><a name="a1109"></a><span class="src-comm">    else if ($inName ==  TP_HIDDEN)</span></li>
<li><a name="a1110"></a><span class="src-comm">      $this-&gt;Hidden = true;</span></li>
<li><a name="a1111"></a><span class="src-comm">    else if ($inName == 'tpongenerate')</span></li>
<li><a name="a1112"></a><span class="src-comm">      $this-&gt;OnGenerate = $inValue;</span></li>
<li><a name="a1113"></a><span class="src-comm">    else */</span></li>
<li><a name="a1114"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inName </span>== <span class="src-str">'style'</span><span class="src-sym">)</span></li>
<li><a name="a1115"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ExtractStyles</span><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1116"></a>    <span class="src-key">else </span><span class="src-key">if </span><span class="src-sym">((</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-num">0</span><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">)</span>==<span class="src-str">'tp'</span><span class="src-sym">) </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">StoreVar</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">))</span></li>
<li><a name="a1117"></a>        <span class="src-sym">;</span></li>
<li><a name="a1118"></a>    <span class="src-key">else</span></li>
<li><a name="a1119"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-var">$inName</span><span class="src-sym">] </span>= <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a1120"></a>    <span class="src-comm">//echo &quot;Name: [$this-&gt;Name]&lt;br&gt;&quot;;</span></li>
<li><a name="a1121"></a>  <span class="src-sym">}</span></li>
<li><a name="a1122"></a>&nbsp;</li>
<li><a name="a1123"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1124"></a><span class="src-doc">   * Assign the attributes of &lt;var&gt;$inTag&lt;/var&gt; to this object.</span></li>
<li><a name="a1125"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">TTpTag </span><span class="src-doc">Reference to tag whose attributes are to be copied.</span></li>
<li><a name="a1126"></a><span class="src-doc">   */</span></li>
<li><a name="a1127"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodAssignAttributes">AssignAttributes</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a1128"></a>  <span class="src-sym">{</span></li>
<li><a name="a1129"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$RawAttrs">RawAttrs</a> = <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">RawAttrs</span><span class="src-sym">;</span></li>
<li><a name="a1130"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Attributes </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1131"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">AssignAttribute</span><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">, </span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1132"></a>  <span class="src-sym">}</span></li>
<li><a name="a1133"></a>&nbsp;</li>
<li><a name="a1134"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1135"></a><span class="src-doc">   * Assign properties of &lt;var&gt;$inTag&lt;/var&gt; to this object.</span></li>
<li><a name="a1136"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">TTpTag </span><span class="src-doc">Reference to tag whose properties are to be copied.</span></li>
<li><a name="a1137"></a><span class="src-doc">   */</span></li>
<li><a name="a1138"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodAssignTag">AssignTag</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inTag</span><span class="src-sym">)</span></li>
<li><a name="a1139"></a>  <span class="src-sym">{</span></li>
<li><a name="a1140"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Element">Element</a> = <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">Element</span><span class="src-sym">;</span></li>
<li><a name="a1141"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#methodAssignAttributes">AssignAttributes</a><span class="src-sym">(</span><span class="src-var">$inTag</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1142"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag </span>= <span class="src-var">$inTag</span><span class="src-sym">-&gt;</span><span class="src-id">GetEndTag</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1143"></a>  <span class="src-sym">}</span></li>
<li><a name="a1144"></a>&nbsp;</li>
<li><a name="a1145"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1146"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1147"></a><span class="src-doc">   */</span></li>
<li><a name="a1148"></a>  <span class="src-key">function </span><span class="src-id">MarshallObject</span><span class="src-sym">(</span><span class="src-var">$inField</span><span class="src-sym">)</span></li>
<li><a name="a1149"></a>  <span class="src-sym">{</span></li>
<li><a name="a1150"></a>    <span class="src-var">$name </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inField</span><span class="src-sym">;</span></li>
<li><a name="a1151"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">))</span></li>
<li><a name="a1152"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inField </span>= <span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPage.html#methodGetObject">GetObject</a><span class="src-sym">(</span><span class="src-var">$name</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1153"></a>    <span class="src-key">else</span></li>
<li><a name="a1154"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inField </span>= <span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a1155"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inField</span><span class="src-sym">)</span></li>
<li><a name="a1156"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#methodDebug">Debug</a><span class="src-sym">(</span><span class="src-str">&quot;Marshalled [&quot; </span>. <span class="src-var">$name </span>.<span class="src-str">&quot;] .&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1157"></a>    <span class="src-key">else</span></li>
<li><a name="a1158"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#methodDebug">Debug</a><span class="src-sym">(</span><span class="src-str">&quot;FAILED to marshall [&quot; </span>. <span class="src-var">$name </span>.<span class="src-str">&quot;] .&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1159"></a>  <span class="src-sym">}</span></li>
<li><a name="a1160"></a>&nbsp;</li>
<li><a name="a1161"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1162"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1163"></a><span class="src-doc">   */</span></li>
<li><a name="a1164"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1165"></a>  <span class="src-sym">{</span></li>
<li><a name="a1166"></a>  <span class="src-sym">}</span></li>
<li><a name="a1167"></a>&nbsp;</li>
<li><a name="a1168"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1169"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1170"></a><span class="src-doc">   */</span></li>
<li><a name="a1171"></a>  <span class="src-key">function </span><span class="src-id">BeforeInput</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1172"></a>  <span class="src-sym">{</span></li>
<li><a name="a1173"></a>  <span class="src-sym">}</span></li>
<li><a name="a1174"></a>&nbsp;</li>
<li><a name="a1175"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1176"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1177"></a><span class="src-doc">   */</span></li>
<li><a name="a1178"></a>  <span class="src-key">function </span><span class="src-id">ProcessInput</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1179"></a>  <span class="src-sym">{</span></li>
<li><a name="a1180"></a>  <span class="src-sym">}</span></li>
<li><a name="a1181"></a>&nbsp;</li>
<li><a name="a1182"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1183"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1184"></a><span class="src-doc">   */</span></li>
<li><a name="a1185"></a>  <span class="src-key">function </span><span class="src-id">AfterInput</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1186"></a>  <span class="src-sym">{</span></li>
<li><a name="a1187"></a>  <span class="src-sym">}</span></li>
<li><a name="a1188"></a>&nbsp;</li>
<li><a name="a1189"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1190"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1191"></a><span class="src-doc">   */</span></li>
<li><a name="a1192"></a>  <span class="src-key">function </span><span class="src-id">BeforeClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1193"></a>  <span class="src-sym">{</span></li>
<li><a name="a1194"></a>  <span class="src-sym">}</span></li>
<li><a name="a1195"></a>&nbsp;</li>
<li><a name="a1196"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1197"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1198"></a><span class="src-doc">   */</span></li>
<li><a name="a1199"></a>  <span class="src-key">function </span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1200"></a>  <span class="src-sym">{</span></li>
<li><a name="a1201"></a>  <span class="src-sym">}</span></li>
<li><a name="a1202"></a>&nbsp;</li>
<li><a name="a1203"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1204"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1205"></a><span class="src-doc">   */</span></li>
<li><a name="a1206"></a>  <span class="src-key">function </span><span class="src-id">AfterClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1207"></a>  <span class="src-sym">{</span></li>
<li><a name="a1208"></a>  <span class="src-sym">}</span></li>
<li><a name="a1209"></a>&nbsp;</li>
<li><a name="a1210"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1211"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1212"></a><span class="src-doc">   */</span></li>
<li><a name="a1213"></a>  <span class="src-key">function </span><span class="src-id">BeforeGeneratePage</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1214"></a>  <span class="src-sym">{</span></li>
<li><a name="a1215"></a>  <span class="src-sym">}</span></li>
<li><a name="a1216"></a>&nbsp;</li>
<li><a name="a1217"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1218"></a><span class="src-doc">   * Get whatever data is considered the &lt;i&gt;value&lt;/i&gt; of this object.</span></li>
<li><a name="a1219"></a><span class="src-doc">   * For TTpObj, this method returns the object's </span><span class="src-doc-inlinetag">{@link Content}</span><span class="src-doc">.</span></li>
<li><a name="a1220"></a><span class="src-doc">   * Subclasses may override to return other data.</span></li>
<li><a name="a1221"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">The </span><span class="src-doc">default value of this control.</span></li>
<li><a name="a1222"></a><span class="src-doc">   */</span></li>
<li><a name="a1223"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodGetDefaultValue">GetDefaultValue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1224"></a>  <span class="src-sym">{</span></li>
<li><a name="a1225"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">;</span></li>
<li><a name="a1226"></a>  <span class="src-sym">}</span></li>
<li><a name="a1227"></a>&nbsp;</li>
<li><a name="a1228"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1229"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1230"></a><span class="src-doc">   */</span></li>
<li><a name="a1231"></a>  <span class="src-key">function </span><span class="src-id">GetAttribute</span><span class="src-sym">(</span><span class="src-var">$inAttr</span><span class="src-sym">)</span></li>
<li><a name="a1232"></a>  <span class="src-sym">{</span></li>
<li><a name="a1233"></a>    <span class="src-key">return </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpSafeArrayGet">TpSafeArrayGet</a><span class="src-sym">(</span><span class="src-var">$inAttr</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1234"></a>  <span class="src-sym">}</span></li>
<li><a name="a1235"></a>&nbsp;</li>
<li><a name="a1236"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1237"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1238"></a><span class="src-doc">   */</span></li>
<li><a name="a1239"></a>  <span class="src-key">function </span><span class="src-id">GetStyle</span><span class="src-sym">(</span><span class="src-var">$inStyle</span><span class="src-sym">)</span></li>
<li><a name="a1240"></a>  <span class="src-sym">{</span></li>
<li><a name="a1241"></a>    <span class="src-key">return </span><a href="../TurboPhpLib/_TpLib_php.html#functionTpSafeArrayGet">TpSafeArrayGet</a><span class="src-sym">(</span><span class="src-var">$inStyle</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1242"></a>  <span class="src-sym">}</span></li>
<li><a name="a1243"></a>&nbsp;</li>
<li><a name="a1244"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1245"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1246"></a><span class="src-doc">   */</span></li>
<li><a name="a1247"></a>  <span class="src-key">function </span><span class="src-id">DoStylize</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inStyle</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1248"></a>  <span class="src-sym">{</span></li>
<li><a name="a1249"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a><span class="src-sym">[</span><span class="src-var">$inStyle</span><span class="src-sym">] </span>= <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a1250"></a>  <span class="src-sym">}</span></li>
<li><a name="a1251"></a>&nbsp;</li>
<li><a name="a1252"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1253"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1254"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@deprecated</span></li>
<li><a name="a1255"></a><span class="src-doc">   */</span></li>
<li><a name="a1256"></a>  <span class="src-key">function </span><span class="src-id">Stylize</span><span class="src-sym">(</span><span class="src-var">$inStyle</span><span class="src-sym">, </span><span class="src-var">$inValue </span>= <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1257"></a>  <span class="src-sym">{</span></li>
<li><a name="a1258"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$inStyle</span><span class="src-sym">))</span></li>
<li><a name="a1259"></a>    <span class="src-sym">{</span></li>
<li><a name="a1260"></a>      <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$inStyle </span><span class="src-key">as </span><span class="src-var">$style </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1261"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoStylize</span><span class="src-sym">(</span><span class="src-var">$style</span><span class="src-sym">, </span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1262"></a>    <span class="src-sym">} </span><span class="src-key">else</span></li>
<li><a name="a1263"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoStylize</span><span class="src-sym">(</span><span class="src-var">$inStyle</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1264"></a>  <span class="src-sym">}</span></li>
<li><a name="a1265"></a>&nbsp;</li>
<li><a name="a1266"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1267"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1268"></a><span class="src-doc">   */</span></li>
<li><a name="a1269"></a>  <span class="src-key">function </span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inArray</span><span class="src-sym">)</span></li>
<li><a name="a1270"></a>  <span class="src-sym">{</span></li>
<li><a name="a1271"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1272"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$inArray </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1273"></a>      <span class="src-var">$result </span>.= <span class="src-str">' ' </span>. <span class="src-var">$name </span>. <span class="src-str">'=&quot;' </span>. <span class="src-var">$value</span>. <span class="src-str">'&quot;'</span><span class="src-sym">;</span></li>
<li><a name="a1274"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a1275"></a>  <span class="src-sym">}</span></li>
<li><a name="a1276"></a>&nbsp;</li>
<li><a name="a1277"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1278"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1279"></a><span class="src-doc">   */</span></li>
<li><a name="a1280"></a>  <span class="src-key">function </span><span class="src-id">GetHtmlAttrs</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1281"></a>  <span class="src-sym">{</span></li>
<li><a name="a1282"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">) </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$RawAttrs">RawAttrs</a><span class="src-sym">;</span></li>
<li><a name="a1283"></a>  <span class="src-sym">}</span></li>
<li><a name="a1284"></a>&nbsp;</li>
<li><a name="a1285"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1286"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1287"></a><span class="src-doc">   */</span></li>
<li><a name="a1288"></a>  <span class="src-key">function </span><span class="src-id">ArrayToStyles</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inArray</span><span class="src-sym">)</span></li>
<li><a name="a1289"></a>  <span class="src-sym">{</span></li>
<li><a name="a1290"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1291"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$inArray </span><span class="src-key">as </span><span class="src-var">$name </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1292"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$value </span>!= <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1293"></a>        <span class="src-var">$result </span>.= <span class="src-str">' ' </span>. <span class="src-var">$name </span>. <span class="src-str">': ' </span>. <span class="src-var">$value</span>. <span class="src-str">';'</span><span class="src-sym">;</span></li>
<li><a name="a1294"></a>    <span class="src-key">return </span><a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$result</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1295"></a>  <span class="src-sym">}</span></li>
<li><a name="a1296"></a>&nbsp;</li>
<li><a name="a1297"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1298"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1299"></a><span class="src-doc">   */</span></li>
<li><a name="a1300"></a>  <span class="src-key">function </span><span class="src-id">GetHtmlStyle</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1301"></a>  <span class="src-sym">{</span></li>
<li><a name="a1302"></a>    <span class="src-var">$style </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToStyles</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1303"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$style </span>!= <span class="src-str">&quot;&quot;</span><span class="src-sym">)</span></li>
<li><a name="a1304"></a>      <span class="src-key">return </span><span class="src-str">' style=&quot;' </span>. <span class="src-var">$style </span>. <span class="src-str">'&quot;'</span><span class="src-sym">;</span></li>
<li><a name="a1305"></a>    <span class="src-key">else</span></li>
<li><a name="a1306"></a>      <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1307"></a>  <span class="src-sym">}</span></li>
<li><a name="a1308"></a>&nbsp;</li>
<li><a name="a1309"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1310"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1311"></a><span class="src-doc">   */</span></li>
<li><a name="a1312"></a>  <span class="src-key">function </span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1313"></a>  <span class="src-sym">{</span></li>
<li><a name="a1314"></a>    <span class="src-key">return </span><span class="src-str">'&lt;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Element">Element</a>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetHtmlAttrs</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetHtmlStyle</span><span class="src-sym">(</span><span class="src-sym">)</span>.</li>
<li><a name="a1315"></a>     <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag </span>== <span class="src-str">'' </span>? <span class="src-str">'/&gt;' </span>: <span class="src-str">'&gt;'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1316"></a>  <span class="src-sym">}</span></li>
<li><a name="a1317"></a>&nbsp;</li>
<li><a name="a1318"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1319"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1320"></a><span class="src-doc">   */</span></li>
<li><a name="a1321"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1322"></a>  <span class="src-sym">{</span></li>
<li><a name="a1323"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">;</span></li>
<li><a name="a1324"></a>  <span class="src-sym">}</span></li>
<li><a name="a1325"></a>&nbsp;</li>
<li><a name="a1326"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1327"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1328"></a><span class="src-doc">   */</span></li>
<li><a name="a1329"></a>  <span class="src-key">function </span><span class="src-id">GetHtml</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1330"></a>  <span class="src-sym">{</span></li>
<li><a name="a1331"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag</span><span class="src-sym">;</span></li>
<li><a name="a1332"></a>  <span class="src-sym">}</span></li>
<li><a name="a1333"></a>&nbsp;</li>
<li><a name="a1334"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1335"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1336"></a><span class="src-doc">   */</span></li>
<li><a name="a1337"></a>  <span class="src-key">function </span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1338"></a>  <span class="src-sym">{</span></li>
<li><a name="a1339"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$OnGenerate">OnGenerate</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1340"></a>  <span class="src-sym">}</span></li>
<li><a name="a1341"></a>&nbsp;</li>
<li><a name="a1342"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1343"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1344"></a><span class="src-doc">   */</span></li>
<li><a name="a1345"></a>  <span class="src-key">function </span><span class="src-id">Generate</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1346"></a>  <span class="src-sym">{</span></li>
<li><a name="a1347"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1348"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Hidden">Hidden</a><span class="src-sym">)</span></li>
<li><a name="a1349"></a>      <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1350"></a>    <span class="src-key">else</span></li>
<li><a name="a1351"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetHtml</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1352"></a>  <span class="src-sym">}</span></li>
<li><a name="a1353"></a>&nbsp;</li>
<li><a name="a1354"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1355"></a><span class="src-doc">   * Dump property information to the standard output.</span></li>
<li><a name="a1356"></a><span class="src-doc">   */</span></li>
<li><a name="a1357"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodDumpVar">DumpVar</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inVar</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1358"></a>  <span class="src-sym">{</span></li>
<li><a name="a1359"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_object">is_object</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">))</span></li>
<li><a name="a1360"></a>    <span class="src-sym">{</span></li>
<li><a name="a1361"></a>      echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">[</span><span class="src-var">$inVar</span><span class="src-sym">]</span> =&gt; </span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1362"></a>      echo <span class="src-sym">(</span><span class="src-var">$inVar </span>== <span class="src-str">'Page' </span>? <a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">) </span>: <span class="src-var">$inValue</span><span class="src-sym">-&gt;</span><span class="src-id">Name</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1363"></a>      echo <span class="src-str">&quot;&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1364"></a>    <span class="src-sym">}</span></li>
<li><a name="a1365"></a>    <span class="src-key">else</span></li>
<li><a name="a1366"></a>      <span class="src-key">switch </span><span class="src-sym">(</span><span class="src-var">$inVar</span><span class="src-sym">)</span></li>
<li><a name="a1367"></a>      <span class="src-sym">{</span></li>
<li><a name="a1368"></a>        <span class="src-key">case </span><span class="src-str">'EndTag'</span>:</li>
<li><a name="a1369"></a>          <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a1370"></a>        <span class="src-comm">//</span></li>
<li><a name="a1371"></a>        <span class="src-key">default</span>:</li>
<li><a name="a1372"></a>          <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">))</span></li>
<li><a name="a1373"></a>          <span class="src-sym">{</span></li>
<li><a name="a1374"></a>            <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">) </span>&gt; <span class="src-num">0</span><span class="src-sym">)</span></li>
<li><a name="a1375"></a>            <span class="src-sym">{</span></li>
<li><a name="a1376"></a>              echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">{</span>+<span class="src-sym">}</span><span class="src-sym">[</span><span class="src-var">$inVar</span><span class="src-sym">]</span>&lt;<span class="src-id">br</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1377"></a>              <a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1378"></a>              echo <span class="src-str">&quot;&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1379"></a>              echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1380"></a>            <span class="src-sym">}</span></li>
<li><a name="a1381"></a>          <span class="src-sym">}</span></li>
<li><a name="a1382"></a>          <span class="src-key">else</span></li>
<li><a name="a1383"></a>          <span class="src-sym">{</span></li>
<li><a name="a1384"></a>            echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">[</span><span class="src-var">$inVar</span><span class="src-sym">]</span> =&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1385"></a>            <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">) </span>&gt; <span class="src-num">100</span><span class="src-sym">))</span></li>
<li><a name="a1386"></a>              echo <span class="src-str">&quot;(long text)&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1387"></a>            <span class="src-key">else</span></li>
<li><a name="a1388"></a>              <a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1389"></a>            echo <span class="src-str">&quot;&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1390"></a>          <span class="src-sym">}</span></li>
<li><a name="a1391"></a>          <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a1392"></a>      <span class="src-sym">}</span></li>
<li><a name="a1393"></a>  <span class="src-sym">}</span></li>
<li><a name="a1394"></a>&nbsp;</li>
<li><a name="a1395"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1396"></a><span class="src-doc">   * Dump object information to the standard output.</span></li>
<li><a name="a1397"></a><span class="src-doc">   */</span></li>
<li><a name="a1398"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpObj.html#methodDump">Dump</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1399"></a>  <span class="src-sym">{</span></li>
<li><a name="a1400"></a>    echo <span class="src-str">&quot;</span><span class="src-str"><span class="src-sym">{</span>+<span class="src-sym">}</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a>: </span><span class="src-str">&quot;</span>.<a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span>.<span class="src-str">&quot;&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1401"></a>    <span class="src-comm">//echo &quot;$this-&gt;Name: &quot;.get_class($this).&quot; [$this-&gt;Class]&lt;br&gt;&quot;;</span></li>
<li><a name="a1402"></a>    <span class="src-var">$vars </span>= <a href="http://www.php.net/get_object_vars">get_object_vars</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1403"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$vars </span><span class="src-key">as </span><span class="src-var">$var </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1404"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a1405"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#methodDumpVar">DumpVar</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$var</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1406"></a>    echo <span class="src-str">&quot;{-}&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a1407"></a>  <span class="src-sym">}</span></li>
<li><a name="a1408"></a><span class="src-sym">}</span></li>
<li><a name="a1409"></a>&nbsp;</li>
<li><a name="a1410"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a1411"></a><span class="src-comm"># | Objects                                                              |</span></li>
<li><a name="a1412"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a1413"></a>&nbsp;</li>
<li><a name="a1412"></a>&nbsp;</li>
<li><a name="a1413"></a>&nbsp;</li>
<li><a name="a1414"></a><span class="src-doc">/**</span></li>
<li><a name="a1415"></a><span class="src-doc"> * Anchor tag (link)</span></li>
<li><a name="a1416"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1417"></a><span class="src-doc"> */</span></li>
<li><a name="a1418"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpAnchor.html">TTpAnchor</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a1419"></a><span class="src-sym">{</span></li>
<li><a name="a1420"></a>  <span class="src-comm">// nothing to specialize</span></li>
<li><a name="a1420"></a>&nbsp;</li>
<li><a name="a1421"></a><span class="src-sym">}</span><span class="src-sym">;</span></li>
<li><a name="a1422"></a>&nbsp;</li>
<li><a name="a1423"></a><span class="src-doc">/**</span></li>
<li><a name="a1424"></a><span class="src-doc"> * Text output.</span></li>
<li><a name="a1425"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1426"></a><span class="src-doc"> */</span></li>
<li><a name="a1427"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpLabel.html">TTpLabel</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a1428"></a><span class="src-sym">{</span></li>
<li><a name="a1429"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">$Anchor</a><span class="src-sym">;</span></li>
<li><a name="a1430"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpLabel.html#var$Caption">$Caption</a><span class="src-sym">;</span></li>
<li><a name="a1431"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1432"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1433"></a><span class="src-doc">   */</span></li>
<li><a name="a1434"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1435"></a>  <span class="src-sym">{</span></li>
<li><a name="a1436"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1437"></a>    <span class="src-comm">// Our Content is typically the Caption</span></li>
<li><a name="a1438"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Caption">Caption</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">;</span></li>
<li><a name="a1439"></a>    <span class="src-comm">// Check if the Content is an anchor</span></li>
<li><a name="a1440"></a>    <span class="src-var">$n </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">, </span><span class="src-num">2</span><span class="src-sym">, </span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1441"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$n </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">IsObject</span><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">))</span></li>
<li><a name="a1442"></a>    <span class="src-sym">{</span></li>
<li><a name="a1443"></a>      <span class="src-var">$obj </span>= <span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Objects</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1444"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_a">is_a</a><span class="src-sym">(</span><span class="src-var">$obj</span><span class="src-sym">, </span><span class="src-str">&quot;ttpanchor&quot;</span><span class="src-sym">))</span></li>
<li><a name="a1445"></a>      <span class="src-sym">{</span></li>
<li><a name="a1446"></a>        <span class="src-comm">// Store the label's anchor</span></li>
<li><a name="a1447"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">Anchor</a> = <span class="src-sym">&amp;</span><span class="src-var">$obj</span><span class="src-sym">;</span></li>
<li><a name="a1448"></a>        <span class="src-comm">// Caption is now the anchor's content</span></li>
<li><a name="a1449"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Caption">Caption</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">Anchor</a><span class="src-sym">-&gt;</span><span class="src-id">Content</span><span class="src-sym">;</span></li>
<li><a name="a1450"></a>      <span class="src-sym">}</span></li>
<li><a name="a1451"></a>    <span class="src-sym">}</span></li>
<li><a name="a1452"></a>    <span class="src-comm">// Erase designed content</span></li>
<li><a name="a1453"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1454"></a>  <span class="src-sym">}</span></li>
<li><a name="a1455"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1456"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1457"></a><span class="src-doc">   */</span></li>
<li><a name="a1458"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1459"></a>  <span class="src-sym">{</span></li>
<li><a name="a1460"></a>    <span class="src-comm">// Use Caption as default Content</span></li>
<li><a name="a1461"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a> == <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1462"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Caption">Caption</a><span class="src-sym">;</span></li>
<li><a name="a1463"></a>    <span class="src-comm">// If user has customized Content, use the customized Content</span></li>
<li><a name="a1464"></a>    <span class="src-key">else</span></li>
<li><a name="a1465"></a>      <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">;</span></li>
<li><a name="a1466"></a>    <span class="src-comm">// Erase customized Content, so the default is Caption once again</span></li>
<li><a name="a1467"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a> == <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1468"></a>    <span class="src-comm">// If using an Anchor</span></li>
<li><a name="a1469"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">Anchor</a><span class="src-sym">)</span></li>
<li><a name="a1470"></a>    <span class="src-sym">{</span></li>
<li><a name="a1471"></a>      <span class="src-comm">// The content of this control is output by the anchor instead</span></li>
<li><a name="a1472"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">Anchor</a><span class="src-sym">-&gt;</span><span class="src-id">Content </span>= <span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a1473"></a>      <span class="src-comm">// Our content will be generated by the Anchor (clumsy)</span></li>
<li><a name="a1474"></a>      <span class="src-var">$result </span>= <span class="src-id">TP_MACSTART </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpLabel.html#var$Anchor">Anchor</a><span class="src-sym">-&gt;</span><span class="src-id">Name </span>. <span class="src-id">TP_MACEND</span><span class="src-sym">;</span></li>
<li><a name="a1475"></a>    <span class="src-sym">}</span></li>
<li><a name="a1476"></a>    <span class="src-comm">// return content</span></li>
<li><a name="a1477"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a1478"></a>  <span class="src-sym">}</span></li>
<li><a name="a1479"></a><span class="src-sym">}</span></li>
<li><a name="a1480"></a>&nbsp;</li>
<li><a name="a1481"></a><span class="src-doc">/**</span></li>
<li><a name="a1482"></a><span class="src-doc"> * TTpObj subclass that generates no output.</span></li>
<li><a name="a1483"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1484"></a><span class="src-doc"> */</span></li>
<li><a name="a1485"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpSilentObj.html">TTpSilentObj</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a1486"></a><span class="src-sym">{</span></li>
<li><a name="a1487"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1488"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span><span class="src-doc">Empty string.</span></li>
<li><a name="a1489"></a><span class="src-doc">   */</span></li>
<li><a name="a1490"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpSilentObj.html#methodGenerate">Generate</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1491"></a>  <span class="src-sym">{</span></li>
<li><a name="a1492"></a>     <span class="src-key">return </span><span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a1493"></a>  <span class="src-sym">}</span></li>
<li><a name="a1494"></a><span class="src-sym">}</span></li>
<li><a name="a1495"></a>&nbsp;</li>
<li><a name="a1496"></a><span class="src-doc">/**</span></li>
<li><a name="a1497"></a><span class="src-doc"> * Generic source for list data.</span></li>
<li><a name="a1498"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1499"></a><span class="src-doc"> */</span></li>
<li><a name="a1500"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpListSource.html">TTpListSource</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpSilentObj.html">TTpSilentObj</a></li>
<li><a name="a1501"></a><span class="src-sym">{</span></li>
<li><a name="a1502"></a>  <span class="src-comm">// Add items to an array.</span></li>
<li><a name="a1503"></a>  <span class="src-comm">// @abstract</span></li>
<li><a name="a1504"></a>  <span class="src-comm">// @param Reference to array to which the list source should add items.</span></li>
<li><a name="a1504"></a>  </li>
<li><a name="a1505"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpListSource.html#methodGetItems">GetItems</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$outItems</span><span class="src-sym">)</span></li>
<li><a name="a1506"></a>  <span class="src-sym">{</span></li>
<li><a name="a1507"></a>    <span class="src-comm">// Must be provided by subclass.</span></li>
<li><a name="a1508"></a>  <span class="src-sym">}</span></li>
<li><a name="a1509"></a><span class="src-sym">}</span></li>
<li><a name="a1510"></a>&nbsp;</li>
<li><a name="a1511"></a><span class="src-doc">/**</span></li>
<li><a name="a1512"></a><span class="src-doc"> * Object which represents a web variable.</span></li>
<li><a name="a1513"></a><span class="src-doc"> * Provides TTpObj functionality for web data that isn't handled by</span></li>
<li><a name="a1514"></a><span class="src-doc"> * an input object.</span></li>
<li><a name="a1515"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1516"></a><span class="src-doc"> */</span></li>
<li><a name="a1517"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpWebVariable.html">TTpWebVariable</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpSilentObj.html">TTpSilentObj</a></li>
<li><a name="a1518"></a><span class="src-sym">{</span></li>
<li><a name="a1519"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1520"></a><span class="src-doc">   * Value of the variable.</span></li>
<li><a name="a1521"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a1522"></a><span class="src-doc">   */</span></li>
<li><a name="a1523"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpWebVariable.html#var$Value">$Value</a><span class="src-sym">;</span></li>
<li><a name="a1524"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1525"></a><span class="src-doc">   * Name of the form object to which this variable belongs.</span></li>
<li><a name="a1526"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1527"></a><span class="src-doc">   */</span></li>
<li><a name="a1528"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpWebVariable.html#var$Form">$Form</a><span class="src-sym">;</span></li>
<li><a name="a1529"></a>&nbsp;</li>
<li><a name="a1530"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1531"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">mixed </span><span class="src-doc">The </span><span class="src-doc-inlinetag">{@link Value}</span><span class="src-doc"> field of this control.</span></li>
<li><a name="a1532"></a><span class="src-doc">   */</span></li>
<li><a name="a1533"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpWebVariable.html#methodGetDefaultValue">GetDefaultValue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1534"></a>  <span class="src-sym">{</span></li>
<li><a name="a1535"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpWebVariable.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a1536"></a>  <span class="src-sym">}</span></li>
<li><a name="a1537"></a>&nbsp;</li>
<li><a name="a1538"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1539"></a><span class="src-doc">   * Copy the </span><span class="src-doc-inlinetag">{@link Value}</span><span class="src-doc"> of this control from the $_REQUEST array.</span></li>
<li><a name="a1540"></a><span class="src-doc">   */</span></li>
<li><a name="a1541"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpWebVariable.html#methodProcessInput">ProcessInput</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1542"></a>  <span class="src-sym">{</span></li>
<li><a name="a1543"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a> != <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1544"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">, </span><span class="src-var">$_REQUEST</span><span class="src-sym">))</span></li>
<li><a name="a1545"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpWebVariable.html#var$Value">Value</a> = <span class="src-var">$_REQUEST</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1546"></a>  <span class="src-sym">}</span></li>
<li><a name="a1547"></a><span class="src-sym">}</span></li>
<li><a name="a1548"></a>&nbsp;</li>
<li><a name="a1549"></a><span class="src-doc">/**</span></li>
<li><a name="a1550"></a><span class="src-doc"> * Test if a path identifies a directory.</span></li>
<li><a name="a1551"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span><span class="src-doc">Path to test.</span></li>
<li><a name="a1552"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">boolen </span><span class="src-doc">True if input path is a directory.</span></li>
<li><a name="a1553"></a><span class="src-doc"> */</span></li>
<li><a name="a1554"></a><span class="src-key">function </span><a href="../TurboPhpLib/_TpLib_php.html#functiontpIsDir">tpIsDir</a><span class="src-sym">(</span><span class="src-var">$inFilename</span><span class="src-sym">)</span></li>
<li><a name="a1555"></a><span class="src-sym">{</span></li>
<li><a name="a1556"></a>  <span class="src-var">$fs </span>= <a href="http://www.php.net/stat">stat</a><span class="src-sym">(</span><span class="src-var">$inFilename</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1557"></a>  <span class="src-key">return </span><span class="src-sym">(</span><span class="src-var">$fs</span><span class="src-sym">[</span><span class="src-str">'mode'</span><span class="src-sym">] </span><span class="src-sym">&amp; </span><span class="src-num">040000 </span>== <span class="src-num">040000</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1558"></a><span class="src-sym">}</span></li>
<li><a name="a1559"></a>&nbsp;</li>
<li><a name="a1560"></a><span class="src-doc">/**</span></li>
<li><a name="a1561"></a><span class="src-doc"> * Collect information about items in a file system directory.</span></li>
<li><a name="a1562"></a><span class="src-doc"> * Builds an array of records about entries in a given</span></li>
<li><a name="a1563"></a><span class="src-doc"> * file-system directory.</span></li>
<li><a name="a1564"></a><span class="src-doc"> *</span></li>
<li><a name="a1565"></a><span class="src-doc"> * Set the </span><span class="src-doc-inlinetag">{@link $Folder}</span><span class="src-doc"> field to the pathname to examine.</span></li>
<li><a name="a1566"></a><span class="src-doc"> *</span></li>
<li><a name="a1567"></a><span class="src-doc"> * The list is automatically built when </span><span class="src-doc-inlinetag">{@link Generate}</span><span class="src-doc"> is called, or</span></li>
<li><a name="a1568"></a><span class="src-doc"> * the list can be built at any time by calling the </span><span class="src-doc-inlinetag">{@link ListFiles}</span><span class="src-doc"> method.</span></li>
<li><a name="a1569"></a><span class="src-doc"> *</span></li>
<li><a name="a1570"></a><span class="src-doc"> * The </span><span class="src-doc-inlinetag">{@link $Files}</span><span class="src-doc"> field is an array of file names</span></li>
<li><a name="a1571"></a><span class="src-doc"> * (or complete paths if </span><span class="src-doc-inlinetag">{@link $FullPath}</span><span class="src-doc"> is true)</span></li>
<li><a name="a1572"></a><span class="src-doc"> * in the directory.</span></li>
<li><a name="a1573"></a><span class="src-doc"> *</span></li>
<li><a name="a1574"></a><span class="src-doc"> * The </span><span class="src-doc-inlinetag">{@link $Infos}</span><span class="src-doc"> field is an array of information records.</span></li>
<li><a name="a1575"></a><span class="src-doc"> * Both the $Files and $Infos arrays contain </span><span class="src-doc-inlinetag">{@link $Count}</span><span class="src-doc"> records.</span></li>
<li><a name="a1576"></a><span class="src-doc"> *</span></li>
<li><a name="a1577"></a><span class="src-doc"> * The list can be sorted by calling the </span><span class="src-doc-inlinetag">{@link Sort}</span><span class="src-doc"> method and specifying</span></li>
<li><a name="a1578"></a><span class="src-doc"> * one of the info record field names (see </span><span class="src-doc-inlinetag">{@link $Infos}</span><span class="src-doc"> documentation).</span></li>
<li><a name="a1579"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1580"></a><span class="src-doc"> */</span></li>
<li><a name="a1581"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpFileList.html">TTpFileList</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpListSource.html">TTpListSource</a></li>
<li><a name="a1582"></a><span class="src-sym">{</span></li>
<li><a name="a1583"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1584"></a><span class="src-doc">   * Number of files in the list.</span></li>
<li><a name="a1585"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a1586"></a><span class="src-doc">   */</span></li>
<li><a name="a1587"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$Count">$Count</a><span class="src-sym">;</span></li>
<li><a name="a1588"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1589"></a><span class="src-doc">   * Name of current file for use by the </span><span class="src-doc-inlinetag">{@link OnFilter}</span><span class="src-doc"> event.</span></li>
<li><a name="a1590"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1591"></a><span class="src-doc">   */</span></li>
<li><a name="a1592"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$File">$File</a><span class="src-sym">;</span></li>
<li><a name="a1593"></a>  <span class="src-doc">/** Array of file names</span></li>
<li><a name="a1594"></a><span class="src-doc">   * (or complete paths if </span><span class="src-doc-inlinetag">{@link $FullPath}</span><span class="src-doc"> is true)</span></li>
<li><a name="a1595"></a><span class="src-doc">   * in the directory.</span></li>
<li><a name="a1596"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a1597"></a><span class="src-doc">   */</span></li>
<li><a name="a1598"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$Files">$Files</a><span class="src-sym">;</span></li>
<li><a name="a1599"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1600"></a><span class="src-doc">   * Information about the current file.</span></li>
<li><a name="a1601"></a><span class="src-doc">   * See </span><span class="src-doc-inlinetag">{@link $Infos}</span><span class="src-doc"> for members.</span></li>
<li><a name="a1602"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a1603"></a><span class="src-doc">   */</span></li>
<li><a name="a1604"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$Info">$Info</a><span class="src-sym">;</span></li>
<li><a name="a1605"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1606"></a><span class="src-doc">   * Array of information records.</span></li>
<li><a name="a1607"></a><span class="src-doc">   * Each record is an array with the following fields:</span></li>
<li><a name="a1608"></a><span class="src-doc">   * - &lt;b&gt;name&lt;/b&gt; =&gt; name of the file</span></li>
<li><a name="a1609"></a><span class="src-doc">   * - &lt;b&gt;size&lt;/b&gt; =&gt; size of the file in bytes</span></li>
<li><a name="a1610"></a><span class="src-doc">   * - &lt;b&gt;time&lt;/b&gt; =&gt; modification date for the file</span></li>
<li><a name="a1611"></a><span class="src-doc">   * - &lt;b&gt;dir&lt;/b&gt; =&gt; true if the file is a directory</span></li>
<li><a name="a1612"></a><span class="src-doc">   * - &lt;b&gt;ext&lt;/b&gt; =&gt; file's extension</span></li>
<li><a name="a1613"></a><span class="src-doc">   * E.g., the extension of the third entry in the directory is</span></li>
<li><a name="a1614"></a><span class="src-doc">   * accessible as:</span></li>
<li><a name="a1615"></a><span class="src-doc">   * &lt;code&gt;$this-&gt;Infos[2]['ext']&lt;/code&gt;</span></li>
<li><a name="a1616"></a><span class="src-doc">   */</span></li>
<li><a name="a1617"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$Infos">$Infos</a><span class="src-sym">;</span></li>
<li><a name="a1618"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1619"></a><span class="src-doc">   * Folder to enumerate.</span></li>
<li><a name="a1620"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1621"></a><span class="src-doc">   */</span></li>
<li><a name="a1622"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$Folder">$Folder</a><span class="src-sym">;</span></li>
<li><a name="a1623"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1624"></a><span class="src-doc">   * If true, then the </span><span class="src-doc-inlinetag">{@link Files}</span><span class="src-doc"> array contains full pathnames instead of</span></li>
<li><a name="a1625"></a><span class="src-doc">   * just filenames.</span></li>
<li><a name="a1626"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a1627"></a><span class="src-doc">   */</span></li>
<li><a name="a1628"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$FullPath">$FullPath</a><span class="src-sym">;</span></li>
<li><a name="a1629"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1630"></a><span class="src-doc">   * List filter event.</span></li>
<li><a name="a1631"></a><span class="src-doc">   * Called once for each item found while enumerating the</span></li>
<li><a name="a1632"></a><span class="src-doc">   * folder. The event handler can examine the </span><span class="src-doc-inlinetag">{@link $File}</span><span class="src-doc"> property for the</span></li>
<li><a name="a1633"></a><span class="src-doc">   * name of the current file. If the current file should be filtered out of</span></li>
<li><a name="a1634"></a><span class="src-doc">   * the list, the handler sets $File to the empty string ('').</span></li>
<li><a name="a1635"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1636"></a><span class="src-doc">   */</span></li>
<li><a name="a1637"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpFileList.html#var$OnFilter">$OnFilter</a><span class="src-sym">;</span></li>
<li><a name="a1638"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1639"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1640"></a><span class="src-doc">   */</span></li>
<li><a name="a1641"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpSilentObj.html#methodGenerate">Generate</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1642"></a>  <span class="src-sym">{</span></li>
<li><a name="a1643"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#methodListFiles">ListFiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1644"></a>  <span class="src-sym">}</span></li>
<li><a name="a1645"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1646"></a><span class="src-doc">   * Enumerate the files.</span></li>
<li><a name="a1647"></a><span class="src-doc">   */</span></li>
<li><a name="a1648"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpFileList.html#methodListFiles">ListFiles</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1649"></a>  <span class="src-sym">{</span></li>
<li><a name="a1650"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Infos">Infos</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1651"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_dir">is_dir</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Folder">Folder</a><span class="src-sym">))</span></li>
<li><a name="a1652"></a>    <span class="src-sym">{</span></li>
<li><a name="a1653"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$dh </span>= <a href="http://www.php.net/opendir">opendir</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Folder">Folder</a><span class="src-sym">))</span></li>
<li><a name="a1654"></a>      <span class="src-sym">{</span></li>
<li><a name="a1655"></a>        <a href="http://www.php.net/clearstatcache">clearstatcache</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1656"></a>        <span class="src-key">while </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a> = <a href="http://www.php.net/readdir">readdir</a><span class="src-sym">(</span><span class="src-var">$dh</span><span class="src-sym">))</span></li>
<li><a name="a1657"></a>          <span class="src-key">if </span><span class="src-sym">((</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a> != <span class="src-str">'.'</span><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a> != <span class="src-str">'..'</span><span class="src-sym">))</span></li>
<li><a name="a1658"></a>          <span class="src-sym">{</span></li>
<li><a name="a1659"></a>            <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Path </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Folder">Folder</a>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a><span class="src-sym">;</span></li>
<li><a name="a1660"></a>            <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Info">Info</a> = <span class="src-key">array</span><span class="src-sym">(</span></li>
<li><a name="a1661"></a>               <span class="src-str">&quot;name&quot; </span>=&gt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a><span class="src-sym">,</span></li>
<li><a name="a1662"></a>               <span class="src-str">&quot;size&quot; </span>=&gt; <a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Path</span><span class="src-sym">)</span><span class="src-sym">,</span></li>
<li><a name="a1663"></a>               <span class="src-str">&quot;time&quot; </span>=&gt; <a href="http://www.php.net/filemtime">filemtime</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Path</span><span class="src-sym">)</span><span class="src-sym">,</span></li>
<li><a name="a1664"></a>               <span class="src-str">&quot;dir&quot; </span>=&gt; <a href="../TurboPhpLib/_TpLib_php.html#functiontpIsDir">tpIsDir</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Path</span><span class="src-sym">)</span><span class="src-sym">,</span></li>
<li><a name="a1665"></a>               <span class="src-str">&quot;ext&quot; </span>=&gt; <span class="src-id">tpSafeArrayGet</span><span class="src-sym">(</span><span class="src-str">'extension'</span><span class="src-sym">, </span><a href="http://www.php.net/pathinfo">pathinfo</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a><span class="src-sym">))</span></li>
<li><a name="a1666"></a>            <span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1667"></a>            <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$OnFilter">OnFilter</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1668"></a>            <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$File">File</a> &lt;&gt; <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1669"></a>              <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Infos">Infos</a><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Info">Info</a><span class="src-sym">;</span></li>
<li><a name="a1670"></a>          <span class="src-sym">}</span></li>
<li><a name="a1671"></a>        <a href="http://www.php.net/closedir">closedir</a><span class="src-sym">(</span><span class="src-var">$dh</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1672"></a>      <span class="src-sym">}</span></li>
<li><a name="a1673"></a>    <span class="src-sym">}</span></li>
<li><a name="a1674"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">FilesFromInfos</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1675"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Count">Count</a> = <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Files">Files</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1676"></a>  <span class="src-sym">}</span></li>
<li><a name="a1677"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1678"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1679"></a><span class="src-doc">   */</span></li>
<li><a name="a1680"></a>  <span class="src-key">function </span><span class="src-id">FilesFromInfos</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1681"></a>  <span class="src-sym">{</span></li>
<li><a name="a1682"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Files">Files</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1683"></a>    <span class="src-var">$prefix </span>= <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$FullPath">FullPath</a> ? <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Folder">Folder</a> : <span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1684"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Infos">Infos</a> <span class="src-key">as </span><span class="src-var">$info</span><span class="src-sym">)</span></li>
<li><a name="a1685"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Files">Files</a><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$prefix</span>.<span class="src-var">$info</span><span class="src-sym">[</span><span class="src-str">&quot;name&quot;</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1686"></a>  <span class="src-sym">}</span></li>
<li><a name="a1687"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1688"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1689"></a><span class="src-doc">   */</span></li>
<li><a name="a1690"></a>  <span class="src-key">function </span><span class="src-id">CompareAsc</span><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">, </span><span class="src-var">$b</span><span class="src-sym">)</span></li>
<li><a name="a1691"></a>  <span class="src-sym">{</span></li>
<li><a name="a1692"></a>    <span class="src-var">$av </span>= <span class="src-var">$a</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">CompareField</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1693"></a>    <span class="src-var">$bv </span>= <span class="src-var">$b</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">CompareField</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1694"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$av</span><span class="src-sym">))</span></li>
<li><a name="a1695"></a>      <span class="src-key">return </span><a href="http://www.php.net/strcmp">strcmp</a><span class="src-sym">(</span><span class="src-var">$av</span><span class="src-sym">, </span><span class="src-var">$bv</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1696"></a>    <span class="src-key">else</span></li>
<li><a name="a1697"></a>      <span class="src-key">return </span><span class="src-var">$bv </span>- <span class="src-var">$av</span><span class="src-sym">;</span></li>
<li><a name="a1698"></a>  <span class="src-sym">}</span></li>
<li><a name="a1699"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1700"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1701"></a><span class="src-doc">   */</span></li>
<li><a name="a1702"></a>  <span class="src-key">function </span><span class="src-id">CompareDesc</span><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">, </span><span class="src-var">$b</span><span class="src-sym">)</span></li>
<li><a name="a1703"></a>  <span class="src-sym">{</span></li>
<li><a name="a1704"></a>    <span class="src-key">return </span><span class="src-id">CompareAsc</span><span class="src-sym">(</span><span class="src-var">$b</span><span class="src-sym">, </span><span class="src-var">$a</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1705"></a>  <span class="src-sym">}</span></li>
<li><a name="a1706"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1707"></a><span class="src-doc">   * Sort the item arrays by $inField.</span></li>
<li><a name="a1708"></a><span class="src-doc">   * See </span><span class="src-doc-inlinetag">{@link $Infos}</span><span class="src-doc"> for a list of</span></li>
<li><a name="a1709"></a><span class="src-doc">   * acceptable field values.</span></li>
<li><a name="a1710"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">string </span></li>
<li><a name="a1711"></a><span class="src-doc">   */</span></li>
<li><a name="a1712"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpFileList.html#methodSort">Sort</a><span class="src-sym">(</span><span class="src-var">$inField</span><span class="src-sym">)</span></li>
<li><a name="a1713"></a>  <span class="src-sym">{</span></li>
<li><a name="a1714"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inField </span>== <span class="src-str">''</span><span class="src-sym">)</span></li>
<li><a name="a1715"></a>      <span class="src-var">$inField </span>= <span class="src-str">'time'</span><span class="src-sym">;</span></li>
<li><a name="a1716"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">CompareField </span>= <span class="src-var">$inField</span><span class="src-sym">;</span></li>
<li><a name="a1717"></a>    <a href="http://www.php.net/usort">usort</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Infos">Infos</a><span class="src-sym">, </span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">, </span><span class="src-str">&quot;CompareAsc&quot;</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a1718"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">FilesFromInfos</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1719"></a>  <span class="src-sym">}</span></li>
<li><a name="a1720"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpFileList.html#methodGetItems">GetItems</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$outItems</span><span class="src-sym">)</span></li>
<li><a name="a1721"></a>  <span class="src-sym">{</span></li>
<li><a name="a1722"></a>    <span class="src-var">$outItems </span>= <a href="http://www.php.net/array_merge">array_merge</a><span class="src-sym">(</span><span class="src-var">$outItems</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpFileList.html#var$Files">Files</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1723"></a>  <span class="src-sym">}</span></li>
<li><a name="a1724"></a><span class="src-sym">}</span></li>
<li><a name="a1725"></a>&nbsp;</li>
<li><a name="a1726"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a1727"></a><span class="src-comm"># | Controls                                                           |</span></li>
<li><a name="a1728"></a><span class="src-comm"># +----------------------------------------------------------------------+</span></li>
<li><a name="a1729"></a>&nbsp;</li>
<li><a name="a1728"></a>&nbsp;</li>
<li><a name="a1729"></a>&nbsp;</li>
<li><a name="a1730"></a><span class="src-doc">/**</span></li>
<li><a name="a1731"></a><span class="src-doc"> * Container of input objects. Represents an HTML &lt;form&gt; object.</span></li>
<li><a name="a1732"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1733"></a><span class="src-doc"> */</span></li>
<li><a name="a1734"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpForm.html">TTpForm</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a1735"></a><span class="src-sym">{</span></li>
<li><a name="a1736"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1737"></a><span class="src-doc">   * Name of the default button.</span></li>
<li><a name="a1738"></a><span class="src-doc">   * This named object will receive a simulated click if the</span></li>
<li><a name="a1739"></a><span class="src-doc">   * form was submitted by any means other than a button click.</span></li>
<li><a name="a1740"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1741"></a><span class="src-doc">   */</span></li>
<li><a name="a1742"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpForm.html#var$DefaultButton">$DefaultButton</a><span class="src-sym">;</span></li>
<li><a name="a1743"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1744"></a><span class="src-doc">   * Event fired when the form has been submitted.</span></li>
<li><a name="a1745"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1746"></a><span class="src-doc">   */</span></li>
<li><a name="a1747"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpForm.html#var$OnSubmit">$OnSubmit</a><span class="src-sym">;</span></li>
<li><a name="a1748"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1749"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1750"></a><span class="src-doc">   */</span></li>
<li><a name="a1751"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1752"></a>  <span class="src-sym">{</span></li>
<li><a name="a1753"></a>    <span class="src-comm">// Submit is called by the Page itself;</span></li>
<li><a name="a1754"></a>    <span class="src-comm">// i.e. not part of the normal input processing.</span></li>
<li><a name="a1755"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpForm.html#var$OnSubmit">OnSubmit</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1756"></a>  <span class="src-sym">}</span></li>
<li><a name="a1757"></a><span class="src-sym">}</span></li>
<li><a name="a1758"></a>&nbsp;</li>
<li><a name="a1759"></a><span class="src-doc">/**</span></li>
<li><a name="a1760"></a><span class="src-doc"> * An object that takes input. Typically an edit box.</span></li>
<li><a name="a1761"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1762"></a><span class="src-doc"> */</span></li>
<li><a name="a1763"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpInput.html">TTpInput</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a1764"></a><span class="src-sym">{</span></li>
<li><a name="a1765"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1766"></a><span class="src-doc">   * If true, the input value is base64 encoded when communicating</span></li>
<li><a name="a1767"></a><span class="src-doc">   * with the client.</span></li>
<li><a name="a1768"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a1769"></a><span class="src-doc">   */</span></li>
<li><a name="a1770"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$Encoded">$Encoded</a><span class="src-sym">;</span></li>
<li><a name="a1771"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1772"></a><span class="src-doc">   * Identifier for the current instance of this control.</span></li>
<li><a name="a1773"></a><span class="src-doc">   * If there is more than one instance of this control on a form</span></li>
<li><a name="a1774"></a><span class="src-doc">   * (for example, if the control is in a repeater), the $Index</span></li>
<li><a name="a1775"></a><span class="src-doc">   * can be used to identify which instance is firing an event.</span></li>
<li><a name="a1776"></a><span class="src-doc">   *</span></li>
<li><a name="a1777"></a><span class="src-doc">   * Do not set this property directly. Use the </span><span class="src-doc-inlinetag">{@link SetIndex}</span><span class="src-doc"> method.</span></li>
<li><a name="a1778"></a><span class="src-doc">   *</span></li>
<li><a name="a1779"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a1780"></a><span class="src-doc">   */</span></li>
<li><a name="a1781"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$Index">$Index</a><span class="src-sym">;</span></li>
<li><a name="a1782"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1783"></a><span class="src-doc">   * The value before input was submitted.</span></li>
<li><a name="a1784"></a><span class="src-doc">   * The </span><span class="src-doc-inlinetag">{@link OnSubmit}</span><span class="src-doc"> event can compare this</span></li>
<li><a name="a1785"></a><span class="src-doc">   * datum to the new {@ink $Value} and make adjustments.</span></li>
<li><a name="a1786"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a1787"></a><span class="src-doc">   */</span></li>
<li><a name="a1788"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$OldValue">$OldValue</a><span class="src-sym">;</span></li>
<li><a name="a1789"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1790"></a><span class="src-doc">   * Event fired when the input control submits a value.</span></li>
<li><a name="a1791"></a><span class="src-doc">   * The submitted value is available in </span><span class="src-doc-inlinetag">{@link $NewValue}</span><span class="src-doc">.</span></li>
<li><a name="a1792"></a><span class="src-doc">   * After OnSubmit is fired, $NewValue is copied to $Value.</span></li>
<li><a name="a1793"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a1794"></a><span class="src-doc">   */</span></li>
<li><a name="a1795"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$OnSubmit">$OnSubmit</a><span class="src-sym">;</span></li>
<li><a name="a1796"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1797"></a><span class="src-doc">   * True if the input control was successful (i.e. if it submitted a value).</span></li>
<li><a name="a1798"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a1799"></a><span class="src-doc">   */</span></li>
<li><a name="a1800"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$Successful">$Successful</a><span class="src-sym">;</span></li>
<li><a name="a1801"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1802"></a><span class="src-doc">   * The value of the input.</span></li>
<li><a name="a1803"></a><span class="src-doc">   * Typically the string contents of an edit box.</span></li>
<li><a name="a1804"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a1805"></a><span class="src-doc">   */</span></li>
<li><a name="a1806"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$Value">$Value</a><span class="src-sym">;</span></li>
<li><a name="a1807"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1808"></a><span class="src-doc">   * Indexed values of the input.</span></li>
<li><a name="a1809"></a><span class="src-doc">   * Array of values stored by index.</span></li>
<li><a name="a1810"></a><span class="src-doc">   * Typically the string contents of an edit box.</span></li>
<li><a name="a1811"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a1812"></a><span class="src-doc">   */</span></li>
<li><a name="a1813"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpInput.html#var$Values">$Values</a><span class="src-sym">;</span></li>
<li><a name="a1814"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1815"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1816"></a><span class="src-doc">   */</span></li>
<li><a name="a1817"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1818"></a>  <span class="src-sym">{</span></li>
<li><a name="a1819"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1820"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Values">Values</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1821"></a>  <span class="src-sym">}</span></li>
<li><a name="a1822"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1823"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1824"></a><span class="src-doc">   */</span></li>
<li><a name="a1825"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1826"></a>  <span class="src-sym">{</span></li>
<li><a name="a1827"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'value'</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">))</span></li>
<li><a name="a1828"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'value'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1829"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">! </span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'name'</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">))</span></li>
<li><a name="a1830"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'name'</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">;</span></li>
<li><a name="a1831"></a>  <span class="src-sym">}</span></li>
<li><a name="a1832"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1833"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1834"></a><span class="src-doc">   */</span></li>
<li><a name="a1835"></a>  <span class="src-key">function </span><span class="src-id">DecodedValue</span><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1836"></a>  <span class="src-sym">{</span></li>
<li><a name="a1837"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Encoded">Encoded</a><span class="src-sym">)</span></li>
<li><a name="a1838"></a>      <span class="src-key">return </span><a href="http://www.php.net/base64_decode">base64_decode</a><span class="src-sym">(</span><a href="http://www.php.net/urldecode">urldecode</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a1839"></a>    <span class="src-key">else</span></li>
<li><a name="a1840"></a>      <span class="src-key">return </span><span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a1841"></a>  <span class="src-sym">}</span></li>
<li><a name="a1842"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1843"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1844"></a><span class="src-doc">   */</span></li>
<li><a name="a1845"></a>  <span class="src-key">function </span><span class="src-id">EncodedValue</span><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a1846"></a>  <span class="src-sym">{</span></li>
<li><a name="a1847"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Encoded">Encoded</a><span class="src-sym">)</span></li>
<li><a name="a1848"></a>      <span class="src-key">return </span><a href="http://www.php.net/urlencode">urlencode</a><span class="src-sym">(</span><a href="http://www.php.net/base64_encode">base64_encode</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a1849"></a>    <span class="src-key">else</span></li>
<li><a name="a1850"></a>      <span class="src-key">return </span><span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a1851"></a>  <span class="src-sym">}</span></li>
<li><a name="a1852"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1853"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1854"></a><span class="src-doc">   */</span></li>
<li><a name="a1855"></a>  <span class="src-key">function </span><span class="src-id">GetIndexedName</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1856"></a>  <span class="src-sym">{</span></li>
<li><a name="a1857"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a><span class="src-sym">)</span></li>
<li><a name="a1858"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a> . <span class="src-str">&quot;__&quot; </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a><span class="src-sym">;</span></li>
<li><a name="a1859"></a>    <span class="src-key">else</span></li>
<li><a name="a1860"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">;</span></li>
<li><a name="a1861"></a>  <span class="src-sym">}</span></li>
<li><a name="a1862"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1863"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1864"></a><span class="src-doc">   */</span></li>
<li><a name="a1865"></a>  <span class="src-key">function </span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1866"></a>  <span class="src-sym">{</span></li>
<li><a name="a1867"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1868"></a>  <span class="src-sym">}</span></li>
<li><a name="a1869"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1870"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1871"></a><span class="src-doc">   */</span></li>
<li><a name="a1872"></a>  <span class="src-key">function </span><span class="src-id">GetRequestName</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1873"></a>  <span class="src-sym">{</span></li>
<li><a name="a1874"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">) </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">;</span></li>
<li><a name="a1875"></a>  <span class="src-sym">}</span></li>
<li><a name="a1876"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1877"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1878"></a><span class="src-doc">   */</span></li>
<li><a name="a1879"></a>  <span class="src-key">function </span><span class="src-id">SearchRequest</span><span class="src-sym">(</span><span class="src-var">$inMethod</span><span class="src-sym">)</span></li>
<li><a name="a1880"></a>  <span class="src-sym">{</span></li>
<li><a name="a1881"></a>    <span class="src-var">$pname </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetRequestName</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1882"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Inputs </span><span class="src-key">as </span><span class="src-var">$input</span><span class="src-sym">)</span></li>
<li><a name="a1883"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$input</span><span class="src-sym">-&gt;</span><span class="src-id">Name </span>== <span class="src-var">$pname</span><span class="src-sym">)</span></li>
<li><a name="a1884"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">$inMethod</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$input</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1885"></a>  <span class="src-sym">}</span></li>
<li><a name="a1886"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1887"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1888"></a><span class="src-doc">   */</span></li>
<li><a name="a1889"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span></li>
<li><a name="a1890"></a>  <span class="src-sym">{</span></li>
<li><a name="a1891"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$OldValue">OldValue</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a1892"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a> = <span class="src-var">$inInput</span><span class="src-sym">-&gt;</span><span class="src-id">Index</span><span class="src-sym">;</span></li>
<li><a name="a1893"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DecodedValue</span><span class="src-sym">(</span><span class="src-var">$inInput</span><span class="src-sym">-&gt;</span><span class="src-id">Value</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1894"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$OnSubmit">OnSubmit</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1895"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Values">Values</a><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a1896"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Successful">Successful</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a1897"></a>  <span class="src-sym">}</span></li>
<li><a name="a1898"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1899"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1900"></a><span class="src-doc">   */</span></li>
<li><a name="a1901"></a>  <span class="src-key">function </span><span class="src-id">ProcessInput</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1902"></a>  <span class="src-sym">{</span></li>
<li><a name="a1903"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Successful">Successful</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a1904"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">SearchRequest</span><span class="src-sym">(</span><span class="src-str">'Submit'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1905"></a>  <span class="src-sym">}</span></li>
<li><a name="a1906"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1907"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1908"></a><span class="src-doc">   */</span></li>
<li><a name="a1909"></a>  <span class="src-key">function </span><span class="src-id">GetQualifiedName</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1910"></a>  <span class="src-sym">{</span></li>
<li><a name="a1911"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">) </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetIndexedName</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1912"></a>  <span class="src-sym">}</span></li>
<li><a name="a1913"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1914"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1915"></a><span class="src-doc">   */</span></li>
<li><a name="a1916"></a>  <span class="src-key">function </span><span class="src-id">SetNameAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1917"></a>  <span class="src-sym">{</span></li>
<li><a name="a1918"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'name'</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetQualifiedName</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1919"></a>  <span class="src-sym">}</span></li>
<li><a name="a1920"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1921"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1922"></a><span class="src-doc">   */</span></li>
<li><a name="a1923"></a>  <span class="src-key">function </span><span class="src-id">SetValueAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1924"></a>  <span class="src-sym">{</span></li>
<li><a name="a1925"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'value'</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">EncodedValue</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1926"></a>  <span class="src-sym">}</span></li>
<li><a name="a1927"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1928"></a><span class="src-doc">   * Identify an instance of an input control.</span></li>
<li><a name="a1929"></a><span class="src-doc">   * When a control is generate multiple times</span></li>
<li><a name="a1930"></a><span class="src-doc">   * (for example, inside a repeater) use</span></li>
<li><a name="a1931"></a><span class="src-doc">   * SetIndex to give each instance of the control</span></li>
<li><a name="a1932"></a><span class="src-doc">   * a unique identifier.</span></li>
<li><a name="a1933"></a><span class="src-doc">   *</span></li>
<li><a name="a1934"></a><span class="src-doc">   * SetIndex will fire an OnInput event if the specified index corresponds</span></li>
<li><a name="a1935"></a><span class="src-doc">   * to a value in the current request.</span></li>
<li><a name="a1936"></a><span class="src-doc">   *</span></li>
<li><a name="a1937"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@param </span><span class="src-doc-type">Integer </span><span class="src-doc">Index for this instance.</span></li>
<li><a name="a1938"></a><span class="src-doc">   */</span></li>
<li><a name="a1939"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpInput.html#methodSetIndex">SetIndex</a><span class="src-sym">(</span><span class="src-var">$inIndex</span><span class="src-sym">)</span></li>
<li><a name="a1940"></a>  <span class="src-sym">{</span></li>
<li><a name="a1941"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a> = <span class="src-var">$inIndex</span><span class="src-sym">;</span></li>
<li><a name="a1942"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$inIndex</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Values">Values</a><span class="src-sym">))</span></li>
<li><a name="a1943"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Values">Values</a><span class="src-sym">[</span><span class="src-var">$inIndex</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a1944"></a>  <span class="src-sym">}</span></li>
<li><a name="a1945"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1946"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1947"></a><span class="src-doc">   */</span></li>
<li><a name="a1948"></a>  <span class="src-key">function </span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1949"></a>  <span class="src-sym">{</span></li>
<li><a name="a1950"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1951"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">SetValueAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1952"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">SetNameAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1953"></a>  <span class="src-sym">}</span></li>
<li><a name="a1954"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpInput.html#methodGetDefaultValue">GetDefaultValue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1955"></a>  <span class="src-sym">{</span></li>
<li><a name="a1956"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a1957"></a>  <span class="src-sym">}</span></li>
<li><a name="a1958"></a><span class="src-sym">}</span></li>
<li><a name="a1959"></a>&nbsp;</li>
<li><a name="a1960"></a><span class="src-doc">/**</span></li>
<li><a name="a1961"></a><span class="src-doc"> * Represents an HTML &lt;textarea&gt; object.</span></li>
<li><a name="a1962"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1963"></a><span class="src-doc"> */</span></li>
<li><a name="a1964"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpTextArea.html">TTpTextArea</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpInput.html">TTpInput</a></li>
<li><a name="a1965"></a><span class="src-sym">{</span></li>
<li><a name="a1966"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1967"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1968"></a><span class="src-doc">   */</span></li>
<li><a name="a1969"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1970"></a>  <span class="src-sym">{</span></li>
<li><a name="a1971"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a1972"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">;</span></li>
<li><a name="a1973"></a>  <span class="src-sym">}</span></li>
<li><a name="a1974"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1975"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1976"></a><span class="src-doc">   */</span></li>
<li><a name="a1977"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1978"></a>  <span class="src-sym">{</span></li>
<li><a name="a1979"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a1980"></a>  <span class="src-sym">}</span></li>
<li><a name="a1981"></a><span class="src-sym">}</span></li>
<li><a name="a1982"></a>&nbsp;</li>
<li><a name="a1983"></a><span class="src-doc">/**</span></li>
<li><a name="a1984"></a><span class="src-doc"> * Input object that also wants clicks.</span></li>
<li><a name="a1985"></a><span class="src-doc"> * After all successful input objects have fired </span><span class="src-doc-inlinetag">{@link TTpInput.OnSubmit}</span><span class="src-doc"> events,</span></li>
<li><a name="a1986"></a><span class="src-doc"> * clickable objects are given an opportunity to fire </span><span class="src-doc-inlinetag">{@link OnClick}</span><span class="src-doc"> events.</span></li>
<li><a name="a1987"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a1988"></a><span class="src-doc"> */</span></li>
<li><a name="a1989"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpClickable.html">TTpClickable</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpInput.html">TTpInput</a></li>
<li><a name="a1990"></a><span class="src-sym">{</span></li>
<li><a name="a1991"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1992"></a><span class="src-doc">   * Event fired when an input object has been clicked (e.g. a button).</span></li>
<li><a name="a1993"></a><span class="src-doc">   */</span></li>
<li><a name="a1994"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpClickable.html#var$OnClick">$OnClick</a><span class="src-sym">;</span></li>
<li><a name="a1995"></a>  <span class="src-doc">/**</span></li>
<li><a name="a1996"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a1997"></a><span class="src-doc">   */</span></li>
<li><a name="a1998"></a>  <span class="src-key">function </span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a1999"></a>  <span class="src-sym">{</span></li>
<li><a name="a2000"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpClickable.html#var$OnClick">OnClick</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2001"></a>  <span class="src-sym">}</span></li>
<li><a name="a2002"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2003"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2004"></a><span class="src-doc">   */</span></li>
<li><a name="a2005"></a>  <span class="src-key">function </span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2006"></a>  <span class="src-sym">{</span></li>
<li><a name="a2007"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Successful">Successful</a><span class="src-sym">)</span></li>
<li><a name="a2008"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2009"></a>  <span class="src-sym">}</span></li>
<li><a name="a2010"></a><span class="src-sym">}</span></li>
<li><a name="a2011"></a>&nbsp;</li>
<li><a name="a2012"></a><span class="src-doc">/**</span></li>
<li><a name="a2013"></a><span class="src-doc"> * Represents a button object.</span></li>
<li><a name="a2014"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2015"></a><span class="src-doc"> */</span></li>
<li><a name="a2016"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpButton.html">TTpButton</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpClickable.html">TTpClickable</a></li>
<li><a name="a2017"></a><span class="src-sym">{</span></li>
<li><a name="a2018"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2019"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2020"></a><span class="src-doc">   */</span></li>
<li><a name="a2021"></a>  <span class="src-key">function </span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2022"></a>  <span class="src-sym">{</span></li>
<li><a name="a2023"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">WasButtonClick </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2024"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2025"></a>  <span class="src-sym">}</span></li>
<li><a name="a2026"></a><span class="src-sym">}</span></li>
<li><a name="a2027"></a>&nbsp;</li>
<li><a name="a2028"></a><span class="src-doc">/**</span></li>
<li><a name="a2029"></a><span class="src-doc"> * Represents a button object.</span></li>
<li><a name="a2030"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2031"></a><span class="src-doc"> */</span></li>
<li><a name="a2032"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpImageButton.html">TTpImageButton</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpButton.html">TTpButton</a></li>
<li><a name="a2033"></a><span class="src-sym">{</span></li>
<li><a name="a2034"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2035"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2036"></a><span class="src-doc">   */</span></li>
<li><a name="a2037"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span></li>
<li><a name="a2038"></a>  <span class="src-sym">{</span></li>
<li><a name="a2039"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inInput</span><span class="src-sym">-&gt;</span><span class="src-id">Coord </span>== <span class="src-str">'x'</span><span class="src-sym">)</span></li>
<li><a name="a2040"></a>      <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2041"></a>  <span class="src-sym">}</span></li>
<li><a name="a2042"></a><span class="src-sym">}</span></li>
<li><a name="a2043"></a>&nbsp;</li>
<li><a name="a2044"></a><span class="src-doc">/**</span></li>
<li><a name="a2045"></a><span class="src-doc"> * Represents a control that can be checked.</span></li>
<li><a name="a2046"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2047"></a><span class="src-doc"> */</span></li>
<li><a name="a2048"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpBooleanBox.html">TTpBooleanBox</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpClickable.html">TTpClickable</a></li>
<li><a name="a2049"></a><span class="src-sym">{</span></li>
<li><a name="a2050"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2051"></a><span class="src-doc">   * Checked state of the control.</span></li>
<li><a name="a2052"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a2053"></a><span class="src-doc">   */</span></li>
<li><a name="a2054"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">$Checked</a><span class="src-sym">;</span></li>
<li><a name="a2055"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2056"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2057"></a><span class="src-doc">   */</span></li>
<li><a name="a2058"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2059"></a>  <span class="src-sym">{</span></li>
<li><a name="a2060"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2061"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'checked'</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">))</span></li>
<li><a name="a2062"></a>    <span class="src-sym">{</span></li>
<li><a name="a2063"></a>      unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'checked'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2064"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2065"></a>    <span class="src-sym">}</span></li>
<li><a name="a2066"></a>  <span class="src-sym">}</span></li>
<li><a name="a2067"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2068"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2069"></a><span class="src-doc">   */</span></li>
<li><a name="a2070"></a>  <span class="src-key">function </span><span class="src-id">GetHtmlAttrs</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2071"></a>  <span class="src-sym">{</span></li>
<li><a name="a2072"></a>    <span class="src-key">return </span><span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">GetHtmlAttrs</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> ? <span class="src-str">' checked=&quot;checked&quot;' </span>: <span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2073"></a>  <span class="src-sym">}</span></li>
<li><a name="a2074"></a><span class="src-sym">}</span></li>
<li><a name="a2075"></a>&nbsp;</li>
<li><a name="a2076"></a><span class="src-doc">/**</span></li>
<li><a name="a2077"></a><span class="src-doc"> * Represents a checkbox object.</span></li>
<li><a name="a2078"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2079"></a><span class="src-doc"> */</span></li>
<li><a name="a2080"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpCheckBox.html">TTpCheckBox</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpBooleanBox.html">TTpBooleanBox</a></li>
<li><a name="a2081"></a><span class="src-sym">{</span></li>
<li><a name="a2082"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpCheckBox.html#var$Successes">$Successes</a><span class="src-sym">;</span></li>
<li><a name="a2083"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2084"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2085"></a><span class="src-doc">   */</span></li>
<li><a name="a2086"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2087"></a>  <span class="src-sym">{</span></li>
<li><a name="a2088"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2089"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpCheckBox.html#var$Successes">Successes</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2090"></a>  <span class="src-sym">}</span></li>
<li><a name="a2091"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2092"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2093"></a><span class="src-doc">   */</span></li>
<li><a name="a2094"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a2095"></a>  <span class="src-sym">{</span></li>
<li><a name="a2096"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2097"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpCheckBox.html#var$Successes">Successes</a><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a><span class="src-sym">;</span></li>
<li><a name="a2098"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2099"></a>  <span class="src-sym">}</span></li>
<li><a name="a2100"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2101"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2102"></a><span class="src-doc">   */</span></li>
<li><a name="a2103"></a>  <span class="src-key">function </span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2104"></a>  <span class="src-sym">{</span></li>
<li><a name="a2105"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpCheckBox.html#var$Successes">Successes</a> <span class="src-key">as </span><span class="src-var">$success</span><span class="src-sym">)</span></li>
<li><a name="a2106"></a>    <span class="src-sym">{</span></li>
<li><a name="a2107"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a> = <span class="src-var">$success</span><span class="src-sym">;</span></li>
<li><a name="a2108"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2109"></a>    <span class="src-sym">}</span></li>
<li><a name="a2110"></a>  <span class="src-sym">}</span></li>
<li><a name="a2111"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2112"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2113"></a><span class="src-doc">   */</span></li>
<li><a name="a2114"></a>  <span class="src-key">function </span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2115"></a>  <span class="src-sym">{</span></li>
<li><a name="a2116"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">HaveRequest</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2117"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <a href="http://www.php.net/in_array">in_array</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpCheckBox.html#var$Successes">Successes</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2118"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">BeforeGenerate</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2119"></a>  <span class="src-sym">}</span></li>
<li><a name="a2120"></a>  <span class="src-comm">/* *</span></li>
<li><a name="a2121"></a><span class="src-comm">   * @access private</span></li>
<li><a name="a2122"></a><span class="src-comm">   */</span></li>
<li><a name="a2123"></a><span class="src-comm">/*</span></li>
<li><a name="a2124"></a><span class="src-comm">  function SetIndex($inIndex)</span></li>
<li><a name="a2125"></a><span class="src-comm">  {</span></li>
<li><a name="a2126"></a><span class="src-comm">    parent::SetIndex($inIndex);</span></li>
<li><a name="a2127"></a><span class="src-comm">    if ($this-&gt;Page-&gt;HaveRequest())</span></li>
<li><a name="a2128"></a><span class="src-comm">      $this-&gt;Checked = in_array($inIndex, $this-&gt;Successes);</span></li>
<li><a name="a2129"></a><span class="src-comm">  }</span></li>
<li><a name="a2130"></a><span class="src-comm">*/</span></li>
<li><a name="a2131"></a><span class="src-sym">}</span></li>
<li><a name="a2132"></a>&nbsp;</li>
<li><a name="a2133"></a><span class="src-doc">/**</span></li>
<li><a name="a2134"></a><span class="src-doc"> * Represents a radio-button object.</span></li>
<li><a name="a2135"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2136"></a><span class="src-doc"> */</span></li>
<li><a name="a2137"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpRadio.html">TTpRadio</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpBooleanBox.html">TTpBooleanBox</a></li>
<li><a name="a2138"></a><span class="src-sym">{</span></li>
<li><a name="a2139"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRadio.html#var$CheckedIndex">$CheckedIndex</a><span class="src-sym">;</span></li>
<li><a name="a2140"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRadio.html#var$Group">$Group</a><span class="src-sym">;</span></li>
<li><a name="a2141"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2142"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2143"></a><span class="src-doc">   */</span></li>
<li><a name="a2144"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2145"></a>  <span class="src-sym">{</span></li>
<li><a name="a2146"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2147"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$Group">Group</a> = <span class="src-sym">@</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'name'</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2148"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$CheckedIndex">CheckedIndex</a> = -<span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2149"></a>  <span class="src-sym">}</span></li>
<li><a name="a2150"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2151"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2152"></a><span class="src-doc">   */</span></li>
<li><a name="a2153"></a>  <span class="src-key">function </span><span class="src-id">GetRequestName</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2154"></a>  <span class="src-sym">{</span></li>
<li><a name="a2155"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetPageQualifier</span><span class="src-sym">(</span><span class="src-sym">) </span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$Group">Group</a><span class="src-sym">;</span></li>
<li><a name="a2156"></a>  <span class="src-sym">}</span></li>
<li><a name="a2157"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2158"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2159"></a><span class="src-doc">   */</span></li>
<li><a name="a2160"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span></li>
<li><a name="a2161"></a>  <span class="src-sym">{</span></li>
<li><a name="a2162"></a>    <span class="src-var">$input </span>= <span class="src-key">new </span><span class="src-id"><a href="../TurboPhpLib/TTpRequestVariable.html">TTpRequestVariable</a></span><span class="src-sym">(</span><span class="src-var">$inInput</span><span class="src-sym">-&gt;</span><span class="src-id">Value</span><span class="src-sym">, </span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2163"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$input</span><span class="src-sym">-&gt;</span><span class="src-id">Name </span>== <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a><span class="src-sym">)</span></li>
<li><a name="a2164"></a>    <span class="src-sym">{</span></li>
<li><a name="a2165"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$CheckedIndex">CheckedIndex</a> = <span class="src-var">$input</span><span class="src-sym">-&gt;</span><span class="src-id">Index</span><span class="src-sym">;</span></li>
<li><a name="a2166"></a>      <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$input</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2167"></a>    <span class="src-sym">}</span></li>
<li><a name="a2168"></a>  <span class="src-sym">}</span></li>
<li><a name="a2169"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2170"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2171"></a><span class="src-doc">   */</span></li>
<li><a name="a2172"></a>  <span class="src-key">function </span><span class="src-id">ProcessClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2173"></a>  <span class="src-sym">{</span></li>
<li><a name="a2174"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Successful">Successful</a><span class="src-sym">)</span></li>
<li><a name="a2175"></a>    <span class="src-sym">{</span></li>
<li><a name="a2176"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Index">Index</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$CheckedIndex">CheckedIndex</a><span class="src-sym">;</span></li>
<li><a name="a2177"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a><span class="src-sym">)</span></li>
<li><a name="a2178"></a>      <span class="src-sym">{</span></li>
<li><a name="a2179"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2180"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2181"></a>      <span class="src-sym">}</span></li>
<li><a name="a2182"></a>    <span class="src-sym">}</span></li>
<li><a name="a2183"></a>     <span class="src-key">else </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a2184"></a>  <span class="src-sym">}</span></li>
<li><a name="a2185"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2186"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2187"></a><span class="src-doc">   */</span></li>
<li><a name="a2188"></a>  <span class="src-key">function </span><span class="src-id">SetNameAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2189"></a>  <span class="src-sym">{</span></li>
<li><a name="a2190"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'name'</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetRequestName</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2191"></a>  <span class="src-sym">}</span></li>
<li><a name="a2192"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2193"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2194"></a><span class="src-doc">   */</span></li>
<li><a name="a2195"></a>  <span class="src-key">function </span><span class="src-id">SetValueAttribute</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2196"></a>  <span class="src-sym">{</span></li>
<li><a name="a2197"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Attributes">Attributes</a><span class="src-sym">[</span><span class="src-str">'value'</span><span class="src-sym">] </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetIndexedName</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2198"></a>  <span class="src-sym">}</span></li>
<li><a name="a2199"></a>   <span class="src-doc">/**</span></li>
<li><a name="a2200"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2201"></a><span class="src-doc">   */</span></li>
<li><a name="a2202"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpInput.html#methodSetIndex">SetIndex</a><span class="src-sym">(</span><span class="src-var">$inIndex</span><span class="src-sym">)</span></li>
<li><a name="a2203"></a>  <span class="src-sym">{</span></li>
<li><a name="a2204"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">HaveRequest</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2205"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-sym">(</span><span class="src-var">$inIndex </span>== <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRadio.html#var$CheckedIndex">CheckedIndex</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2206"></a>    <span class="src-key">else</span></li>
<li><a name="a2207"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpBooleanBox.html#var$Checked">Checked</a> = <span class="src-sym">(</span><span class="src-var">$inIndex </span>== <span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2208"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">SetIndex</span><span class="src-sym">(</span><span class="src-var">$inIndex</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2209"></a>  <span class="src-sym">}</span></li>
<li><a name="a2210"></a><span class="src-sym">}</span></li>
<li><a name="a2211"></a>&nbsp;</li>
<li><a name="a2212"></a><span class="src-doc">/**</span></li>
<li><a name="a2213"></a><span class="src-doc"> * Represents a select object (aka combo-box or menu).</span></li>
<li><a name="a2214"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2215"></a><span class="src-doc"> */</span></li>
<li><a name="a2216"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpSelect.html">TTpSelect</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpClickable.html">TTpClickable</a></li>
<li><a name="a2217"></a><span class="src-sym">{</span></li>
<li><a name="a2218"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2219"></a><span class="src-doc">   * Array of options to display.</span></li>
<li><a name="a2220"></a><span class="src-doc">   * The </span><span class="src-doc-inlinetag">{@link $Selected}</span><span class="src-doc"> property always refers to a key</span></li>
<li><a name="a2221"></a><span class="src-doc">   * of this array. The key could be an integer index, or a string if</span></li>
<li><a name="a2222"></a><span class="src-doc">   * if $Options is a hashed array.</span></li>
<li><a name="a2223"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a2224"></a><span class="src-doc">   */</span></li>
<li><a name="a2225"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpSelect.html#var$Options">$Options</a><span class="src-sym">;</span></li>
<li><a name="a2226"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2227"></a><span class="src-doc">   * Key of the selected item in the </span><span class="src-doc-inlinetag">{@link Options}</span><span class="src-doc"> array.</span></li>
<li><a name="a2228"></a><span class="src-doc">   * Read this property to discover the selected value. Write this property</span></li>
<li><a name="a2229"></a><span class="src-doc">   * to change the selection.</span></li>
<li><a name="a2230"></a><span class="src-doc">   * To read/write the selected {@var value} use the </span><span class="src-doc-inlinetag">{@link GetSelectedValue}</span></li>
<li><a name="a2231"></a><span class="src-doc">   * or </span><span class="src-doc-inlinetag">{@link SetSelectedValue}</span><span class="src-doc"> methods.</span></li>
<li><a name="a2232"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">mixed </span></li>
<li><a name="a2233"></a><span class="src-doc">   */</span></li>
<li><a name="a2234"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">$Selected</a><span class="src-sym">;</span></li>
<li><a name="a2235"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2236"></a><span class="src-doc">   * Reference to a </span><span class="src-doc-inlinetag">{@link TTpListSource}</span><span class="src-doc"> object which will supply the option</span></li>
<li><a name="a2237"></a><span class="src-doc">   * array.</span></li>
<li><a name="a2238"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a2239"></a><span class="src-doc">   */</span></li>
<li><a name="a2240"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpSelect.html#var$Source">$Source</a><span class="src-sym">;</span></li>
<li><a name="a2241"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2242"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2243"></a><span class="src-doc">   */</span></li>
<li><a name="a2244"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2245"></a>  <span class="src-sym">{</span></li>
<li><a name="a2246"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2247"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2248"></a>  <span class="src-sym">}</span></li>
<li><a name="a2249"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2250"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2251"></a><span class="src-doc">   */</span></li>
<li><a name="a2252"></a>  <span class="src-key">function </span><span class="src-id">ExtractOptions</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2253"></a>  <span class="src-sym">{</span></li>
<li><a name="a2254"></a>    <span class="src-comm">// Clear options</span></li>
<li><a name="a2255"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2256"></a>    <span class="src-comm">// Grab up the option tags</span></li>
<li><a name="a2257"></a>    <a href="http://www.php.net/preg_match_all">preg_match_all</a><span class="src-sym">(</span><span class="src-str">&quot;|&lt;option[^&lt;]*?|Ui&quot;</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">, </span><span class="src-var">$options</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2258"></a>    <span class="src-comm">// Parse options into array</span></li>
<li><a name="a2259"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$options</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">] </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$option</span><span class="src-sym">)</span></li>
<li><a name="a2260"></a>    <span class="src-sym">{</span></li>
<li><a name="a2261"></a>      <span class="src-comm">// Grab the option content</span></li>
<li><a name="a2262"></a>      <a href="http://www.php.net/preg_match_all">preg_match_all</a><span class="src-sym">(</span><span class="src-str">&quot;/(?:[^&gt;]*?)&gt;([^&lt;]*?)/Ui&quot;</span><span class="src-sym">, </span><span class="src-var">$option</span><span class="src-sym">, </span><span class="src-var">$contents</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2263"></a>      <span class="src-var">$content </span>= <span class="src-var">$contents</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2264"></a>      <span class="src-comm">// Grab the option attributes</span></li>
<li><a name="a2265"></a>      <span class="src-var">$a </span>= <span class="src-id">TpExtractAttrs</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$option</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2266"></a>      <span class="src-comm">//</span></li>
<li><a name="a2267"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">&quot;value&quot;</span><span class="src-sym">, </span><span class="src-var">$a</span><span class="src-sym">))</span></li>
<li><a name="a2268"></a>        <span class="src-var">$value </span>= <span class="src-var">$a</span><span class="src-sym">[</span><span class="src-str">&quot;value&quot;</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2269"></a>      <span class="src-key">else</span></li>
<li><a name="a2270"></a>        <span class="src-var">$value </span>= <span class="src-var">$content</span><span class="src-sym">;</span></li>
<li><a name="a2271"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">&quot;selected&quot;</span><span class="src-sym">, </span><span class="src-var">$a</span><span class="src-sym">))</span></li>
<li><a name="a2272"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> = <span class="src-var">$value</span><span class="src-sym">;</span></li>
<li><a name="a2273"></a>      <span class="src-comm">// Store the option data</span></li>
<li><a name="a2274"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">] </span>= <span class="src-var">$content</span><span class="src-sym">;</span></li>
<li><a name="a2275"></a>      <span class="src-comm">//</span></li>
<li><a name="a2276"></a><span class="src-comm">/*</span></li>
<li><a name="a2277"></a><span class="src-comm">      // This code stores indexed options by default,</span></li>
<li><a name="a2278"></a><span class="src-comm">      // instead of hashed options as above.</span></li>
<li><a name="a2279"></a><span class="src-comm">      if (array_key_exists(&quot;value&quot;, $a))</span></li>
<li><a name="a2280"></a><span class="src-comm">        $value = $a[&quot;value&quot;];</span></li>
<li><a name="a2281"></a><span class="src-comm">      else</span></li>
<li><a name="a2282"></a><span class="src-comm">        $value = ''; //count($this-&gt;Options); //$content;</span></li>
<li><a name="a2283"></a><span class="src-comm">      if (array_key_exists(&quot;selected&quot;, $a))</span></li>
<li><a name="a2284"></a><span class="src-comm">        $this-&gt;Selected = count($this-&gt;Options); //$value;</span></li>
<li><a name="a2285"></a><span class="src-comm">      // Store the option data</span></li>
<li><a name="a2286"></a><span class="src-comm">      if ($value == '')</span></li>
<li><a name="a2287"></a><span class="src-comm">        $this-&gt;Options[] = $content;</span></li>
<li><a name="a2288"></a><span class="src-comm">      else</span></li>
<li><a name="a2289"></a><span class="src-comm">        $this-&gt;Options[$value] = $content;</span></li>
<li><a name="a2290"></a><span class="src-comm">*/</span></li>
<li><a name="a2291"></a>    <span class="src-sym">}</span></li>
<li><a name="a2292"></a>  <span class="src-sym">}</span></li>
<li><a name="a2293"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2294"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2295"></a><span class="src-doc">   */</span></li>
<li><a name="a2296"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2297"></a>  <span class="src-sym">{</span></li>
<li><a name="a2298"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2299"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ExtractOptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2300"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">MarshallObject</span><span class="src-sym">(</span><span class="src-str">'Source'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2301"></a>  <span class="src-sym">}</span></li>
<li><a name="a2302"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2303"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2304"></a><span class="src-doc">   */</span></li>
<li><a name="a2305"></a>  <span class="src-key">function </span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span></li>
<li><a name="a2306"></a>  <span class="src-sym">{</span></li>
<li><a name="a2307"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Submit</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inInput</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2308"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpInput.html#var$Value">Value</a><span class="src-sym">;</span></li>
<li><a name="a2309"></a>  <span class="src-sym">}</span></li>
<li><a name="a2310"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2311"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2312"></a><span class="src-doc">   */</span></li>
<li><a name="a2313"></a>  <span class="src-key">function </span><span class="src-id">GetSourceOptions</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2314"></a>  <span class="src-sym">{</span></li>
<li><a name="a2315"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Source">Source</a><span class="src-sym">)</span></li>
<li><a name="a2316"></a>    <span class="src-sym">{</span></li>
<li><a name="a2317"></a>      <span class="src-comm">// Stores options by index</span></li>
<li><a name="a2318"></a>      <span class="src-comm">//$this-&gt;Options = array();</span></li>
<li><a name="a2319"></a>      <span class="src-comm">//$this-&gt;Source-&gt;GetItems($this-&gt;Options);</span></li>
<li><a name="a2320"></a>      <span class="src-comm">//</span></li>
<li><a name="a2321"></a>      <span class="src-comm">// Stores options by hash</span></li>
<li><a name="a2322"></a>      <span class="src-var">$list </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2323"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Source">Source</a><span class="src-sym">-&gt;</span><span class="src-id">GetItems</span><span class="src-sym">(</span><span class="src-var">$list</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2324"></a>      <span class="src-comm">// Store the option data</span></li>
<li><a name="a2325"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2326"></a>      <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$list </span><span class="src-key">as </span><span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a2327"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a><span class="src-sym">[</span><span class="src-var">$value</span><span class="src-sym">] </span>= <span class="src-var">$value</span><span class="src-sym">;</span></li>
<li><a name="a2328"></a>    <span class="src-sym">}</span></li>
<li><a name="a2329"></a>  <span class="src-sym">}</span></li>
<li><a name="a2330"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2331"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2332"></a><span class="src-doc">   */</span></li>
<li><a name="a2333"></a>  <span class="src-key">function </span><span class="src-id">ProcessInput</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2334"></a>  <span class="src-sym">{</span></li>
<li><a name="a2335"></a>    <span class="src-var">$lastSelected </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a><span class="src-sym">;</span></li>
<li><a name="a2336"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">ProcessInput</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2337"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSourceOptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2338"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> &lt;&gt; <span class="src-var">$lastSelected</span><span class="src-sym">)</span></li>
<li><a name="a2339"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Click</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2340"></a>  <span class="src-sym">}</span></li>
<li><a name="a2341"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2342"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2343"></a><span class="src-doc">   */</span></li>
<li><a name="a2344"></a>  <span class="src-key">function </span><span class="src-id">IsGoodSelection</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2345"></a>  <span class="src-sym">{</span></li>
<li><a name="a2346"></a>    <span class="src-key">return </span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2347"></a>  <span class="src-sym">}</span></li>
<li><a name="a2348"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2349"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2350"></a><span class="src-doc">   */</span></li>
<li><a name="a2351"></a>  <span class="src-key">function </span><span class="src-id">SetDefaultSelection</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2352"></a>  <span class="src-sym">{</span></li>
<li><a name="a2353"></a>    <span class="src-var">$keys </span>= <a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2354"></a>    <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$keys</span><span class="src-sym">) </span>&gt; <span class="src-num">0</span><span class="src-sym">)</span></li>
<li><a name="a2355"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> = <span class="src-var">$keys</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2356"></a>    <span class="src-key">else</span></li>
<li><a name="a2357"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> = <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2358"></a>  <span class="src-sym">}</span></li>
<li><a name="a2359"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2360"></a><span class="src-doc">   * Returns the value of the selected option.</span></li>
<li><a name="a2361"></a><span class="src-doc">   * Where the </span><span class="src-doc-inlinetag">{@link $Selected}</span><span class="src-doc"> property is a key into the </span><span class="src-doc-inlinetag">{@link Options}</span></li>
<li><a name="a2362"></a><span class="src-doc">   * array, this function returns instead the &lt;b&gt;value&lt;/b&gt; for that key.</span></li>
<li><a name="a2363"></a><span class="src-doc">   * This function validates </span><span class="src-doc-inlinetag">{@link $Selected}</span><span class="src-doc"> by setting it to the default</span></li>
<li><a name="a2364"></a><span class="src-doc">   * value if it is improper.</span></li>
<li><a name="a2365"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
<li><a name="a2366"></a><span class="src-doc">   */</span></li>
<li><a name="a2367"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpSelect.html#methodGetSelectedValue">GetSelectedValue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2368"></a>  <span class="src-sym">{</span></li>
<li><a name="a2369"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">IsGoodSelection</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2370"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">SetDefaultSelection</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2371"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">IsGoodSelection</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2372"></a>      <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2373"></a>    <span class="src-key">else</span></li>
<li><a name="a2374"></a>      <span class="src-key">return </span><span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2375"></a>  <span class="src-sym">}</span></li>
<li><a name="a2376"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2377"></a><span class="src-doc">   * Sets the value of the selected option.</span></li>
<li><a name="a2378"></a><span class="src-doc">   * Where the </span><span class="src-doc-inlinetag">{@link $Selected}</span><span class="src-doc"> property is a key into the </span><span class="src-doc-inlinetag">{@link Options}</span></li>
<li><a name="a2379"></a><span class="src-doc">   * array, this function returns instead the &lt;b&gt;value&lt;/b&gt; for that key.</span></li>
<li><a name="a2380"></a><span class="src-doc">   * This function validates </span><span class="src-doc-inlinetag">{@link $Selected}</span><span class="src-doc"> by setting it to the default</span></li>
<li><a name="a2381"></a><span class="src-doc">   * value if it is improper.</span></li>
<li><a name="a2382"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@return </span><span class="src-doc-type">string </span></li>
<li><a name="a2383"></a><span class="src-doc">   */</span></li>
<li><a name="a2384"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpSelect.html#methodSetSelectedValue">SetSelectedValue</a><span class="src-sym">(</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a2385"></a>  <span class="src-sym">{</span></li>
<li><a name="a2386"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a> <span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a2387"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$value </span>== <span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a2388"></a>      <span class="src-sym">{</span></li>
<li><a name="a2389"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> = <span class="src-var">$key</span><span class="src-sym">;</span></li>
<li><a name="a2390"></a>        <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a2391"></a>      <span class="src-sym">}</span></li>
<li><a name="a2392"></a>  <span class="src-sym">}</span></li>
<li><a name="a2393"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2394"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2395"></a><span class="src-doc">   */</span></li>
<li><a name="a2396"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpInput.html#methodGetDefaultValue">GetDefaultValue</a><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2397"></a>  <span class="src-sym">{</span></li>
<li><a name="a2398"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#methodGetSelectedValue">GetSelectedValue</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2399"></a>  <span class="src-sym">}</span></li>
<li><a name="a2400"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2401"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2402"></a><span class="src-doc">   */</span></li>
<li><a name="a2403"></a>  <span class="src-key">function </span><span class="src-id">GetHtmlOptions</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2404"></a>  <span class="src-sym">{</span></li>
<li><a name="a2405"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">IsGoodSelection</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2406"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">SetDefaultSelection</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2407"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2408"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Options">Options</a> <span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a2409"></a>    <span class="src-sym">{</span></li>
<li><a name="a2410"></a>      <span class="src-var">$a </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'value' </span>=&gt; <span class="src-var">$key</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2411"></a>      <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpSelect.html#var$Selected">Selected</a> == <span class="src-var">$key</span><span class="src-sym">)</span></li>
<li><a name="a2412"></a>        <span class="src-var">$a</span><span class="src-sym">[</span><span class="src-str">'selected'</span><span class="src-sym">] </span>= <span class="src-str">'selected'</span><span class="src-sym">;</span></li>
<li><a name="a2413"></a>      <span class="src-var">$result </span>.= <span class="src-str">'&lt;option'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">)</span>.<span class="src-str">'&gt;'</span>.<span class="src-var">$value</span>.<span class="src-str">&quot;&lt;/option&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2414"></a>    <span class="src-sym">}</span></li>
<li><a name="a2415"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a2416"></a>  <span class="src-sym">}</span></li>
<li><a name="a2417"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2418"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2419"></a><span class="src-doc">   */</span></li>
<li><a name="a2420"></a>  <span class="src-key">function </span><span class="src-id">BeforeClicks</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2421"></a>  <span class="src-sym">{</span></li>
<li><a name="a2422"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSourceOptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2423"></a>  <span class="src-sym">}</span></li>
<li><a name="a2424"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2425"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2426"></a><span class="src-doc">   */</span></li>
<li><a name="a2427"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2428"></a>  <span class="src-sym">{</span></li>
<li><a name="a2429"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetHtmlOptions</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2430"></a>  <span class="src-sym">}</span></li>
<li><a name="a2431"></a><span class="src-sym">}</span></li>
<li><a name="a2432"></a>&nbsp;</li>
<li><a name="a2433"></a><span class="src-doc">/**</span></li>
<li><a name="a2434"></a><span class="src-doc"> * A container which can output itself multiple times.</span></li>
<li><a name="a2435"></a><span class="src-doc"> * A repeater will generate itself as a series of rows until </span><span class="src-doc-inlinetag">{@link $Count}</span></li>
<li><a name="a2436"></a><span class="src-doc"> * iterations have been completed or </span><span class="src-doc-inlinetag">{@link $Stop}</span><span class="src-doc"> becomes true.</span></li>
<li><a name="a2437"></a><span class="src-doc"> * The </span><span class="src-doc-inlinetag">{@link $OnRepeat}</span><span class="src-doc"> event is fired once before each iteration.</span></li>
<li><a name="a2438"></a><span class="src-doc"> * Controls inside the repeater will fire </span><span class="src-doc-inlinetag">{@link OnGenerate}</span><span class="src-doc"> events every</span></li>
<li><a name="a2439"></a><span class="src-doc"> * iteration.</span></li>
<li><a name="a2440"></a><span class="src-doc"> * The </span><span class="src-doc-inlinetag">{@link $Index}</span><span class="src-doc"> property indicates the current iteration</span></li>
<li><a name="a2441"></a><span class="src-doc"> * (zero based, i.e., the first iteration has an $Index of zero).</span></li>
<li><a name="a2442"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2443"></a><span class="src-doc"> */</span></li>
<li><a name="a2444"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpRepeater.html">TTpRepeater</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2445"></a><span class="src-sym">{</span></li>
<li><a name="a2446"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2447"></a><span class="src-doc">   * Current iteration number (zero based).</span></li>
<li><a name="a2448"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">Integer </span></li>
<li><a name="a2449"></a><span class="src-doc">   */</span></li>
<li><a name="a2450"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRepeater.html#var$Index">$Index</a><span class="src-sym">;</span></li>
<li><a name="a2451"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2452"></a><span class="src-doc">   * Number of iterations to repeat.</span></li>
<li><a name="a2453"></a><span class="src-doc">   * If set to zero, the repeater will continue until </span><span class="src-doc-inlinetag">{@link $Stop}</span><span class="src-doc"> is true.</span></li>
<li><a name="a2454"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">Integer </span></li>
<li><a name="a2455"></a><span class="src-doc">   */</span></li>
<li><a name="a2456"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRepeater.html#var$Count">$Count</a><span class="src-sym">;</span></li>
<li><a name="a2457"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2458"></a><span class="src-doc">   * Set true to stop the repeater.</span></li>
<li><a name="a2459"></a><span class="src-doc">   * The repeater will iterate until there have been </span><span class="src-doc-inlinetag">{@link $Count}</span><span class="src-doc"> interations</span></li>
<li><a name="a2460"></a><span class="src-doc">   * or until $Stop becomes true. If </span><span class="src-doc-inlinetag">{@link $Count}</span><span class="src-doc"> is zero, the repeater</span></li>
<li><a name="a2461"></a><span class="src-doc">   * will repeat indefinitely until $Stop is true.</span></li>
<li><a name="a2462"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">Boolean </span></li>
<li><a name="a2463"></a><span class="src-doc">   */</span></li>
<li><a name="a2464"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRepeater.html#var$Stop">$Stop</a><span class="src-sym">;</span></li>
<li><a name="a2465"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2466"></a><span class="src-doc">   * Event that is fired before each repeat.</span></li>
<li><a name="a2467"></a><span class="src-doc">   * The $OnRepeat event is fired once before each iteration.</span></li>
<li><a name="a2468"></a><span class="src-doc">   *</span></li>
<li><a name="a2469"></a><span class="src-doc">   * The </span><span class="src-doc-inlinetag">{@link $Index}</span><span class="src-doc"> property indicates the current iteration</span></li>
<li><a name="a2470"></a><span class="src-doc">   * (zero based, that is, the first iteration has $Index = zero).</span></li>
<li><a name="a2471"></a><span class="src-doc">   *</span></li>
<li><a name="a2472"></a><span class="src-doc">   * Set </span><span class="src-doc-inlinetag">{@link $Stop}</span><span class="src-doc"> to true inside this event to stop generation immediately.</span></li>
<li><a name="a2473"></a><span class="src-doc">   *</span></li>
<li><a name="a2474"></a><span class="src-doc">   * </span><span class="src-doc-inlinetag">{@link $Stop}</span><span class="src-doc"> will already be true if</span></li>
<li><a name="a2475"></a><span class="src-doc">   * </span><span class="src-doc-inlinetag">{@link $Index}</span><span class="src-doc"> = </span><span class="src-doc-inlinetag">{@link $Count}</span><span class="src-doc"> and </span><span class="src-doc-inlinetag">{@link $Count}</span><span class="src-doc"> &gt; 0.</span></li>
<li><a name="a2476"></a><span class="src-doc">   * In this case, you may set </span><span class="src-doc-inlinetag">{@link $Stop}</span><span class="src-doc"> to false to continue repeating</span></li>
<li><a name="a2477"></a><span class="src-doc">   *</span></li>
<li><a name="a2478"></a><span class="src-doc">   * Note that controls inside the repeater will fire </span><span class="src-doc-inlinetag">{@link OnGenerate}</span><span class="src-doc"> events</span></li>
<li><a name="a2479"></a><span class="src-doc">   * each iteration.</span></li>
<li><a name="a2480"></a><span class="src-doc">   */</span></li>
<li><a name="a2481"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpRepeater.html#var$OnRepeat">$OnRepeat</a><span class="src-sym">;</span></li>
<li><a name="a2482"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2483"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2484"></a><span class="src-doc">   */</span></li>
<li><a name="a2485"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2486"></a>  <span class="src-sym">{</span></li>
<li><a name="a2487"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2488"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Count">Count</a> = <span class="src-num">4</span><span class="src-sym">;</span></li>
<li><a name="a2489"></a>  <span class="src-sym">}</span></li>
<li><a name="a2490"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2491"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2492"></a><span class="src-doc">   */</span></li>
<li><a name="a2493"></a>  <span class="src-key">function </span><span class="src-id">GetChild</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$matches</span><span class="src-sym">)</span></li>
<li><a name="a2494"></a>  <span class="src-sym">{</span></li>
<li><a name="a2495"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">IsObject</span><span class="src-sym">(</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))</span></li>
<li><a name="a2496"></a>    <span class="src-sym">{</span></li>
<li><a name="a2497"></a>      <span class="src-var">$obj </span>= <span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Objects</span><span class="src-sym">[</span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]]</span><span class="src-sym">;</span></li>
<li><a name="a2498"></a>      <span class="src-comm">//echo &quot;Found repeater child $obj-&gt;Name...&lt;br&gt;&quot;;</span></li>
<li><a name="a2499"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Children</span><span class="src-sym">[</span><span class="src-sym">] </span>= <span class="src-sym">&amp;</span><span class="src-var">$obj</span><span class="src-sym">;</span></li>
<li><a name="a2500"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">LocateChildren</span><span class="src-sym">(</span><span class="src-var">$obj</span><span class="src-sym">-&gt;</span><span class="src-id">Content</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2501"></a>    <span class="src-sym">}</span></li>
<li><a name="a2502"></a>    <span class="src-key">return </span><span class="src-var">$matches</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></li>
<li><a name="a2503"></a>  <span class="src-sym">}</span></li>
<li><a name="a2504"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2505"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2506"></a><span class="src-doc">   */</span></li>
<li><a name="a2507"></a>  <span class="src-key">function </span><span class="src-id">LocateChildren</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inText</span><span class="src-sym">)</span></li>
<li><a name="a2508"></a>  <span class="src-sym">{</span></li>
<li><a name="a2509"></a>    <span class="src-key">return </span><a href="http://www.php.net/preg_replace_callback">preg_replace_callback</a><span class="src-sym">(</span><span class="src-id">P_MACRO</span><span class="src-sym">, </span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">, </span><span class="src-str">'GetChild'</span><span class="src-sym">)</span><span class="src-sym">, </span><span class="src-var">$inText</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2510"></a>  <span class="src-sym">}</span></li>
<li><a name="a2511"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2512"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2513"></a><span class="src-doc">   */</span></li>
<li><a name="a2514"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2515"></a>  <span class="src-sym">{</span></li>
<li><a name="a2516"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2517"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">LocateChildren</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2518"></a>  <span class="src-sym">}</span></li>
<li><a name="a2519"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2520"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2521"></a><span class="src-doc">   */</span></li>
<li><a name="a2522"></a>  <span class="src-key">function </span><span class="src-id">ShouldContinue</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2523"></a>  <span class="src-sym">{</span></li>
<li><a name="a2524"></a>    <span class="src-key">return </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Stop">Stop</a> &amp;&amp;</li>
<li><a name="a2525"></a>      <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Count">Count</a> &lt; <span class="src-num">1 </span>?</li>
<li><a name="a2526"></a>        <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$OnRepeat">OnRepeat</a> &lt;&gt; <span class="src-str">''</span><span class="src-sym">) </span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Index">Index</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Count">Count</a><span class="src-sym">))</span><span class="src-sym">;</span></li>
<li><a name="a2527"></a>  <span class="src-sym">}</span></li>
<li><a name="a2528"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2529"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2530"></a><span class="src-doc">   */</span></li>
<li><a name="a2531"></a>  <span class="src-key">function </span><span class="src-id">IndexChildren</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2532"></a>  <span class="src-sym">{</span></li>
<li><a name="a2533"></a>    <span class="src-var">$c </span>= <a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Children</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2534"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i </span>= <span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i </span>&lt; <span class="src-var">$c</span><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
<li><a name="a2535"></a>    <span class="src-sym">{</span></li>
<li><a name="a2536"></a>      <span class="src-comm">//echo &quot;Repeater child &quot;.$this-&gt;Children[$i]-&gt;Name.&quot; is of class &quot;.get_class($this-&gt;Children[$i]).&quot;&lt;br&gt;&quot;;</span></li>
<li><a name="a2537"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/is_a">is_a</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Children</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">, </span><span class="src-str">&quot;TTpInput&quot;</span><span class="src-sym">))</span></li>
<li><a name="a2538"></a>      <span class="src-sym">{</span></li>
<li><a name="a2539"></a>        <span class="src-comm">//echo &quot;Repeater child &quot;.$this-&gt;Children[$i]-&gt;Name.&quot; is an input.&lt;br&gt;&quot;;</span></li>
<li><a name="a2540"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Children</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">SetIndex</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Index">Index</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2541"></a>      <span class="src-sym">}</span></li>
<li><a name="a2542"></a>    <span class="src-sym">}</span></li>
<li><a name="a2543"></a>  <span class="src-sym">}</span></li>
<li><a name="a2544"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2545"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2546"></a><span class="src-doc">   */</span></li>
<li><a name="a2547"></a>  <span class="src-key">function </span><span class="src-id">Repeat</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2548"></a>  <span class="src-sym">{</span></li>
<li><a name="a2549"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Index">Index</a>++<span class="src-sym">;</span></li>
<li><a name="a2550"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ShouldContinue</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2551"></a>    <span class="src-sym">{</span></li>
<li><a name="a2552"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">IndexChildren</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2553"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$OnRepeat">OnRepeat</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2554"></a>    <span class="src-sym">}</span></li>
<li><a name="a2555"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ShouldContinue</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2556"></a>  <span class="src-sym">}</span></li>
<li><a name="a2557"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2558"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2559"></a><span class="src-doc">   */</span></li>
<li><a name="a2560"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2561"></a>  <span class="src-sym">{</span></li>
<li><a name="a2562"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Stop">Stop</a> = <span class="src-id">false</span><span class="src-sym">;</span></li>
<li><a name="a2563"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpRepeater.html#var$Index">Index</a> = -<span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2564"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2565"></a>    <span class="src-key">while </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">Repeat</span><span class="src-sym">(</span><span class="src-sym">))</span></li>
<li><a name="a2566"></a>      <span class="src-var">$result </span>.= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Interpolate</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2567"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a2568"></a>  <span class="src-sym">}</span></li>
<li><a name="a2569"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2570"></a><span class="src-doc">   * Dump property information to the standard output.</span></li>
<li><a name="a2571"></a><span class="src-doc">   */</span></li>
<li><a name="a2572"></a>  <span class="src-key">function </span><a href="../TurboPhpLib/TTpRepeater.html#methodDumpVar">DumpVar</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inVar</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a2573"></a>  <span class="src-sym">{</span></li>
<li><a name="a2574"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$inVar </span>== <span class="src-str">'Children'</span><span class="src-sym">)</span></li>
<li><a name="a2575"></a>      echo <span class="src-str">&quot;Children[]&lt;br&gt;&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2576"></a>    <span class="src-key">else</span></li>
<li><a name="a2577"></a>      <span class="src-id">parent</span><span class="src-sym">::</span><a href="../TurboPhpLib/TTpObj.html#methodDumpVar">DumpVar</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$inVar</span><span class="src-sym">, </span><span class="src-sym">&amp;</span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2578"></a>  <span class="src-sym">}</span></li>
<li><a name="a2579"></a><span class="src-sym">}</span></li>
<li><a name="a2580"></a>&nbsp;</li>
<li><a name="a2581"></a><span class="src-doc">/**</span></li>
<li><a name="a2582"></a><span class="src-doc"> * A scrolling container.</span></li>
<li><a name="a2583"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2584"></a><span class="src-doc"> */</span></li>
<li><a name="a2585"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpScroller.html">TTpScroller</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2586"></a><span class="src-sym">{</span></li>
<li><a name="a2587"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2588"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2589"></a><span class="src-doc">   */</span></li>
<li><a name="a2590"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2591"></a>  <span class="src-sym">{</span></li>
<li><a name="a2592"></a>    <span class="src-key">return</span></li>
<li><a name="a2593"></a>      <span class="src-str">'&lt;div style=&quot;width: 100%; height: 100%; overflow: auto;&quot;&gt;'</span></li>
<li><a name="a2594"></a>        . <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">) </span>.</li>
<li><a name="a2595"></a>          <span class="src-str">'&lt;/div&gt;'</span><span class="src-sym">;</span></li>
<li><a name="a2596"></a>  <span class="src-sym">}</span></li>
<li><a name="a2597"></a><span class="src-sym">}</span></li>
<li><a name="a2598"></a>&nbsp;</li>
<li><a name="a2599"></a><span class="src-doc">/**</span></li>
<li><a name="a2600"></a><span class="src-doc"> * A dynamic table.</span></li>
<li><a name="a2601"></a><span class="src-doc"> * A table whose layout and content are specified at runtime (i.e. using PHP).</span></li>
<li><a name="a2602"></a><span class="src-doc"> *</span></li>
<li><a name="a2603"></a><span class="src-doc"> * Set the number of cells with the </span><span class="src-doc-inlinetag">{@link $Rows}</span><span class="src-doc"> and </span><span class="src-doc-inlinetag">{@link $Cols}</span><span class="src-doc"> properties.</span></li>
<li><a name="a2604"></a><span class="src-doc"> *</span></li>
<li><a name="a2605"></a><span class="src-doc"> * Each time a cell is generated, the </span><span class="src-doc-inlinetag">{@link $OnCell}</span><span class="src-doc"> event is fired.</span></li>
<li><a name="a2606"></a><span class="src-doc"> * The row number is held in </span><span class="src-doc-inlinetag">{@link $Row}</span><span class="src-doc"> and the col number in </span><span class="src-doc-inlinetag">{@link $Col}</span></li>
<li><a name="a2607"></a><span class="src-doc"> * (zero-based).</span></li>
<li><a name="a2608"></a><span class="src-doc"> * Use the </span><span class="src-doc-inlinetag">{@link $OnCell}</span><span class="src-doc"> event to specify the </span><span class="src-doc-inlinetag">{@link $RowSpan}</span><span class="src-doc"> and</span></li>
<li><a name="a2609"></a><span class="src-doc"> * </span><span class="src-doc-inlinetag">{@link $ColSpan}</span><span class="src-doc"> for the cell, to setup </span><span class="src-doc-inlinetag">{@link $CellAttributes}</span><span class="src-doc">,</span></li>
<li><a name="a2610"></a><span class="src-doc"> * and assign </span><span class="src-doc-inlinetag">{@link $Content}</span><span class="src-doc">.</span></li>
<li><a name="a2611"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2612"></a><span class="src-doc"> */</span></li>
<li><a name="a2613"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpTable.html">TTpTable</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2614"></a><span class="src-sym">{</span></li>
<li><a name="a2615"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2616"></a><span class="src-doc">   * Number of rows to generate.</span></li>
<li><a name="a2617"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2618"></a><span class="src-doc">   */</span></li>
<li><a name="a2619"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$Rows">$Rows</a><span class="src-sym">;</span></li>
<li><a name="a2620"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2621"></a><span class="src-doc">   * Number of columns to generate.</span></li>
<li><a name="a2622"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2623"></a><span class="src-doc">   */</span></li>
<li><a name="a2624"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$Cols">$Cols</a><span class="src-sym">;</span></li>
<li><a name="a2625"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2626"></a><span class="src-doc">   * Event that fires before a cell is generated.</span></li>
<li><a name="a2627"></a><span class="src-doc">   * The row number of the current cell is available in </span><span class="src-doc-inlinetag">{@link $Row}</span></li>
<li><a name="a2628"></a><span class="src-doc">   * and the column number in </span><span class="src-doc-inlinetag">{@link $Col}</span><span class="src-doc"> (zero-based).</span></li>
<li><a name="a2629"></a><span class="src-doc">   * Use this event event to specify the </span><span class="src-doc-inlinetag">{@link $RowSpan}</span><span class="src-doc"> and</span></li>
<li><a name="a2630"></a><span class="src-doc">   * </span><span class="src-doc-inlinetag">{@link $ColSpan}</span><span class="src-doc"> for the cell, to setup </span><span class="src-doc-inlinetag">{@link $CellAttributes}</span><span class="src-doc">,</span></li>
<li><a name="a2631"></a><span class="src-doc">   * and assign </span><span class="src-doc-inlinetag">{@link $Content}</span><span class="src-doc">.</span></li>
<li><a name="a2632"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a2633"></a><span class="src-doc">   */</span></li>
<li><a name="a2634"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$OnCell">$OnCell</a><span class="src-sym">;</span></li>
<li><a name="a2635"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2636"></a><span class="src-doc">   * Event that fires before a row is generated.</span></li>
<li><a name="a2637"></a><span class="src-doc">   * The row number of the current row is available in </span><span class="src-doc-inlinetag">{@link $Row}</span></li>
<li><a name="a2638"></a><span class="src-doc">   * (zero-based).</span></li>
<li><a name="a2639"></a><span class="src-doc">   * Use this event event to specify </span><span class="src-doc-inlinetag">{@link $RowAttributes}</span><span class="src-doc"> or to</span></li>
<li><a name="a2640"></a><span class="src-doc">   * calculate row-based values.</span></li>
<li><a name="a2641"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span></li>
<li><a name="a2642"></a><span class="src-doc">   */</span></li>
<li><a name="a2643"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$OnRow">$OnRow</a><span class="src-sym">;</span></li>
<li><a name="a2644"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2645"></a><span class="src-doc">   * Index of the current row (first row has index zero).</span></li>
<li><a name="a2646"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2647"></a><span class="src-doc">   */</span></li>
<li><a name="a2648"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$Row">$Row</a><span class="src-sym">;</span></li>
<li><a name="a2649"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2650"></a><span class="src-doc">   * Index of the current column (first column has index zero).</span></li>
<li><a name="a2651"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2652"></a><span class="src-doc">   */</span></li>
<li><a name="a2653"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$Col">$Col</a><span class="src-sym">;</span></li>
<li><a name="a2654"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2655"></a><span class="src-doc">   * Number of rows the current cell will span. Generally set inside</span></li>
<li><a name="a2656"></a><span class="src-doc">   * an </span><span class="src-doc-inlinetag">{@link OnCell}</span><span class="src-doc"> event handler.</span></li>
<li><a name="a2657"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2658"></a><span class="src-doc">   */</span></li>
<li><a name="a2659"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">$RowSpan</a><span class="src-sym">;</span></li>
<li><a name="a2660"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2661"></a><span class="src-doc">   * Number of columns the current cell will span. Generally set inside</span></li>
<li><a name="a2662"></a><span class="src-doc">   * an </span><span class="src-doc-inlinetag">{@link OnCell}</span><span class="src-doc"> event handler.</span></li>
<li><a name="a2663"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">integer </span></li>
<li><a name="a2664"></a><span class="src-doc">   */</span></li>
<li><a name="a2665"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">$ColSpan</a><span class="src-sym">;</span></li>
<li><a name="a2666"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2667"></a><span class="src-doc">   * Set to true to cause the current cell to be a header cell</span></li>
<li><a name="a2668"></a><span class="src-doc">   * (i.e. to have a &lt;th&gt; tag instead of &lt;td&gt; tag).</span></li>
<li><a name="a2669"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">boolean </span></li>
<li><a name="a2670"></a><span class="src-doc">   */</span></li>
<li><a name="a2671"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$HeaderCell">$HeaderCell</a><span class="src-sym">;</span></li>
<li><a name="a2672"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2673"></a><span class="src-doc">   * Array of name, value HTML attribute pairs for the current cell.</span></li>
<li><a name="a2674"></a><span class="src-doc">   * Example:</span></li>
<li><a name="a2675"></a><span class="src-doc">   * $this-&gt;CellAttributes['color'] = 'green';</span></li>
<li><a name="a2676"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a2677"></a><span class="src-doc">   */</span></li>
<li><a name="a2678"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$CellAttributes">$CellAttributes</a><span class="src-sym">;</span></li>
<li><a name="a2679"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2680"></a><span class="src-doc">   * Array of name, value HTML attribute pairs for the current row.</span></li>
<li><a name="a2681"></a><span class="src-doc">   * Example:</span></li>
<li><a name="a2682"></a><span class="src-doc">   * $this-&gt;RowAttributes['color'] = 'blue';</span></li>
<li><a name="a2683"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">array </span></li>
<li><a name="a2684"></a><span class="src-doc">   */</span></li>
<li><a name="a2685"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpTable.html#var$RowAttributes">$RowAttributes</a><span class="src-sym">;</span></li>
<li><a name="a2686"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2687"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2688"></a><span class="src-doc">   */</span></li>
<li><a name="a2689"></a>  <span class="src-key">var </span><span class="src-var">$Cells</span><span class="src-sym">;</span></li>
<li><a name="a2690"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2691"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2692"></a><span class="src-doc">   */</span></li>
<li><a name="a2693"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2694"></a>  <span class="src-sym">{</span></li>
<li><a name="a2695"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2696"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowAttributes">RowAttributes</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2697"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$CellAttributes">CellAttributes</a> = <span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2698"></a>  <span class="src-sym">}</span></li>
<li><a name="a2699"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2700"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2701"></a><span class="src-doc">   */</span></li>
<li><a name="a2702"></a>  <span class="src-key">function </span><span class="src-id">StoreAttr</span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">)</span></li>
<li><a name="a2703"></a>  <span class="src-sym">{</span></li>
<li><a name="a2704"></a>    <span class="src-key">switch </span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">)</span></li>
<li><a name="a2705"></a>    <span class="src-sym">{</span></li>
<li><a name="a2706"></a>      <span class="src-key">case </span><span class="src-str">'tprows'</span>:</li>
<li><a name="a2707"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a> = <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a2708"></a>        <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a2709"></a>      <span class="src-key">case </span><span class="src-str">'tpcols'</span>:</li>
<li><a name="a2710"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a> = <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a2711"></a>        <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a2712"></a>      <span class="src-key">case </span><span class="src-str">'tponcell'</span>:</li>
<li><a name="a2713"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnCell">OnCell</a> = <span class="src-var">$inValue</span><span class="src-sym">;</span></li>
<li><a name="a2714"></a>        <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a2715"></a>      <span class="src-key">default</span>:</li>
<li><a name="a2716"></a>        <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">StoreAttr</span><span class="src-sym">(</span><span class="src-var">$inName</span><span class="src-sym">, </span><span class="src-var">$inValue</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2717"></a>        <span class="src-key">break</span><span class="src-sym">;</span></li>
<li><a name="a2718"></a>    <span class="src-sym">}</span></li>
<li><a name="a2719"></a>  <span class="src-sym">}</span></li>
<li><a name="a2720"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2721"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2722"></a><span class="src-doc">   */</span></li>
<li><a name="a2723"></a>  <span class="src-key">function </span><span class="src-id">ClearCells</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2724"></a>  <span class="src-sym">{</span></li>
<li><a name="a2725"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a> != <span class="src-num">0 </span>&amp;&amp; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a> != <span class="src-num">0</span><span class="src-sym">)</span></li>
<li><a name="a2726"></a>    <span class="src-sym">{</span></li>
<li><a name="a2727"></a>      <span class="src-var">$f </span>= <a href="http://www.php.net/array_fill">array_fill</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a><span class="src-sym">, </span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2728"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Cells </span>= <a href="http://www.php.net/array_fill">array_fill</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">, </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a><span class="src-sym">, </span><span class="src-var">$f</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2729"></a>    <span class="src-sym">}</span></li>
<li><a name="a2730"></a>  <span class="src-sym">}</span></li>
<li><a name="a2731"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2732"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2733"></a><span class="src-doc">   */</span></li>
<li><a name="a2734"></a>  <span class="src-key">function </span><span class="src-id">MarkSpannedCells</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2735"></a>  <span class="src-sym">{</span></li>
<li><a name="a2736"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$j</span>&lt;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a><span class="src-sym">; </span><span class="src-var">$j</span>++<span class="src-sym">)</span></li>
<li><a name="a2737"></a>      <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$i</span>&lt;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a><span class="src-sym">; </span><span class="src-var">$i</span>++<span class="src-sym">)</span></li>
<li><a name="a2738"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Cells</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a> + <span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a> + <span class="src-var">$j</span><span class="src-sym">] </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2739"></a>  <span class="src-sym">}</span></li>
<li><a name="a2740"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2741"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2742"></a><span class="src-doc">   */</span></li>
<li><a name="a2743"></a>  <span class="src-key">function </span><span class="src-id">GetSpanAttributes</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2744"></a>  <span class="src-sym">{</span></li>
<li><a name="a2745"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2746"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a> &gt; <span class="src-num">1</span><span class="src-sym">)</span></li>
<li><a name="a2747"></a>      <span class="src-var">$result </span>.= <span class="src-str">' colspan=&quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></li>
<li><a name="a2748"></a>    <span class="src-key">if </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a> &gt; <span class="src-num">1</span><span class="src-sym">)</span></li>
<li><a name="a2749"></a>      <span class="src-var">$result </span>.= <span class="src-str">' rowspan=&quot;'</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a>.<span class="src-str">'&quot;'</span><span class="src-sym">;</span></li>
<li><a name="a2750"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a2751"></a>  <span class="src-sym">}</span></li>
<li><a name="a2752"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2753"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2754"></a><span class="src-doc">   */</span></li>
<li><a name="a2755"></a>  <span class="src-key">function </span><span class="src-id">GetFixedHtml</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2756"></a>  <span class="src-sym">{</span></li>
<li><a name="a2757"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2758"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ClearCells</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2759"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>++<span class="src-sym">)</span></li>
<li><a name="a2760"></a>    <span class="src-sym">{</span></li>
<li><a name="a2761"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnRow">OnRow</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2762"></a>      <span class="src-var">$result </span>.= <span class="src-str">'&lt;tr'</span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowAttributes">RowAttributes</a><span class="src-sym">) </span>. <span class="src-str">&quot;&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2763"></a>      <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>++<span class="src-sym">)</span></li>
<li><a name="a2764"></a>      <span class="src-sym">{</span></li>
<li><a name="a2765"></a>        <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Cells</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a><span class="src-sym">]</span><span class="src-sym">)</span></li>
<li><a name="a2766"></a>        <span class="src-sym">{</span></li>
<li><a name="a2767"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2768"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2769"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnCell">OnCell</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2770"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">MarkSpannedCells</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2771"></a>          <span class="src-var">$t </span>= <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$HeaderCell">HeaderCell</a> ? <span class="src-str">'th' </span>: <span class="src-str">'td'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2772"></a>          <span class="src-var">$a </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSpanAttributes</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$CellAttributes">CellAttributes</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2773"></a>          <span class="src-var">$result </span>.= <span class="src-str">&quot;</span><span class="src-str">&lt;<span class="src-var">$t$a</span>&gt;</span><span class="src-str">&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Interpolate</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">)</span>.<span class="src-str">&quot;</span><span class="src-str">&lt;/<span class="src-var">$t</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2774"></a>        <span class="src-sym">}</span></li>
<li><a name="a2775"></a>      <span class="src-sym">}</span></li>
<li><a name="a2776"></a>      <span class="src-var">$result </span>.= <span class="src-str">&quot;\n&lt;/tr&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2777"></a>    <span class="src-sym">}</span></li>
<li><a name="a2778"></a>    <span class="src-key">return </span><span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a2779"></a>  <span class="src-sym">}</span></li>
<li><a name="a2780"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2781"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2782"></a><span class="src-doc">   */</span></li>
<li><a name="a2783"></a>  <span class="src-key">function </span><span class="src-id">GetScrollingHtml</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2784"></a>  <span class="src-sym">{</span></li>
<li><a name="a2785"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2786"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ClearCells</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2787"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a><span class="src-sym">) </span>&amp;&amp; <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a> == <span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>++<span class="src-sym">)</span></li>
<li><a name="a2788"></a>    <span class="src-sym">{</span></li>
<li><a name="a2789"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnRow">OnRow</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2790"></a>      <span class="src-var">$result </span>.= <span class="src-str">'&lt;tr'</span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowAttributes">RowAttributes</a><span class="src-sym">) </span>. <span class="src-str">&quot;&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2791"></a>      <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>++<span class="src-sym">)</span></li>
<li><a name="a2792"></a>      <span class="src-sym">{</span></li>
<li><a name="a2793"></a>         <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2794"></a>         <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2795"></a>         <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnCell">OnCell</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2796"></a>         <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">MarkSpannedCells</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2797"></a>         <span class="src-var">$t </span>= <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$HeaderCell">HeaderCell</a> ? <span class="src-str">'th' </span>: <span class="src-str">'td'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2798"></a>         <span class="src-var">$a </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSpanAttributes</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$CellAttributes">CellAttributes</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2799"></a>         <span class="src-var">$result </span>.= <span class="src-str">&quot;</span><span class="src-str">&lt;<span class="src-var">$t$a</span>&gt;</span><span class="src-str">&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Interpolate</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">)</span>.<span class="src-str">&quot;</span><span class="src-str">&lt;/<span class="src-var">$t</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2800"></a>      <span class="src-sym">}</span></li>
<li><a name="a2801"></a>      <span class="src-var">$result </span>.= <span class="src-str">&quot;\n&lt;/tr&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2802"></a>    <span class="src-sym">}</span></li>
<li><a name="a2803"></a>    <span class="src-var">$html </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$result</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag</span><span class="src-sym">;</span></li>
<li><a name="a2804"></a>    <span class="src-comm">//</span></li>
<li><a name="a2805"></a>    <span class="src-var">$result </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2806"></a>    <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>=<span class="src-num">1</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Rows">Rows</a><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a>++<span class="src-sym">)</span></li>
<li><a name="a2807"></a>    <span class="src-sym">{</span></li>
<li><a name="a2808"></a>      <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnRow">OnRow</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2809"></a>      <span class="src-var">$result </span>.= <span class="src-str">'&lt;tr'</span>. <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowAttributes">RowAttributes</a><span class="src-sym">) </span>. <span class="src-str">&quot;&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2810"></a>      <span class="src-key">for </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>=<span class="src-num">0</span><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a> &lt; <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Cols">Cols</a><span class="src-sym">; </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a>++<span class="src-sym">)</span></li>
<li><a name="a2811"></a>      <span class="src-sym">{</span></li>
<li><a name="a2812"></a>        <span class="src-key">if </span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Cells</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Col">Col</a><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$Row">Row</a><span class="src-sym">]</span><span class="src-sym">)</span></li>
<li><a name="a2813"></a>        <span class="src-sym">{</span></li>
<li><a name="a2814"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$ColSpan">ColSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2815"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$RowSpan">RowSpan</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2816"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">DoEvent</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$OnCell">OnCell</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2817"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">MarkSpannedCells</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2818"></a>          <span class="src-var">$t </span>= <span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$HeaderCell">HeaderCell</a> ? <span class="src-str">'th' </span>: <span class="src-str">'td'</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2819"></a>          <span class="src-var">$a </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSpanAttributes</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">ArrayToAttrs</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpTable.html#var$CellAttributes">CellAttributes</a><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2820"></a>          <span class="src-var">$result </span>.= <span class="src-str">&quot;</span><span class="src-str">&lt;<span class="src-var">$t$a</span>&gt;</span><span class="src-str">&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Interpolate</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a><span class="src-sym">)</span>.<span class="src-str">&quot;</span><span class="src-str">&lt;/<span class="src-var">$t</span>&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2821"></a>        <span class="src-sym">}</span></li>
<li><a name="a2822"></a>      <span class="src-sym">}</span></li>
<li><a name="a2823"></a>      <span class="src-var">$result </span>.= <span class="src-str">&quot;\n&lt;/tr&gt;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2824"></a>    <span class="src-sym">}</span></li>
<li><a name="a2825"></a>    <span class="src-var">$result </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetStartTag</span><span class="src-sym">(</span><span class="src-sym">)</span>.<span class="src-var">$result</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">EndTag</span><span class="src-sym">;</span></li>
<li><a name="a2826"></a>    <span class="src-var">$result </span>= <span class="src-str">'&lt;div style=&quot;width:100%; height:250px; overflow: auto;&quot;&gt;'</span></li>
<li><a name="a2827"></a>            . <span class="src-var">$result </span>.<span class="src-str">'&lt;/div&gt;'</span><span class="src-sym">;</span></li>
<li><a name="a2828"></a>    <span class="src-key">return </span><span class="src-var">$html</span>.<span class="src-var">$result</span><span class="src-sym">;</span></li>
<li><a name="a2829"></a>  <span class="src-sym">}</span></li>
<li><a name="a2830"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2831"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2832"></a><span class="src-doc">   */</span></li>
<li><a name="a2833"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2834"></a>  <span class="src-sym">{</span></li>
<li><a name="a2835"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetFixedHtml</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2836"></a>    <span class="src-comm">//return $this-&gt;GetScrollingHtml();</span></li>
<li><a name="a2837"></a>  <span class="src-sym">}</span></li>
<li><a name="a2838"></a><span class="src-sym">}</span></li>
<li><a name="a2839"></a>&nbsp;</li>
<li><a name="a2840"></a><span class="src-doc">/**</span></li>
<li><a name="a2841"></a><span class="src-doc"> * A single sheet inside a </span><span class="src-doc-inlinetag">{@link TTpPageControl}</span><span class="src-doc">.</span></li>
<li><a name="a2842"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2843"></a><span class="src-doc"> */</span></li>
<li><a name="a2844"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpSheet.html">TTpSheet</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2845"></a><span class="src-sym">{</span></li>
<li><a name="a2846"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2847"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2848"></a><span class="src-doc">   */</span></li>
<li><a name="a2849"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2850"></a>  <span class="src-sym">{</span></li>
<li><a name="a2851"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2852"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Styles">Styles</a><span class="src-sym">[</span><span class="src-str">'display'</span><span class="src-sym">] </span>= <span class="src-str">'none'</span><span class="src-sym">;</span></li>
<li><a name="a2853"></a>  <span class="src-sym">}</span></li>
<li><a name="a2854"></a><span class="src-sym">}</span></li>
<li><a name="a2855"></a>&nbsp;</li>
<li><a name="a2856"></a><span class="src-doc">/**</span></li>
<li><a name="a2857"></a><span class="src-doc"> * A control that can display one of several overlapping blocks of content.</span></li>
<li><a name="a2858"></a><span class="src-doc"> * Specify which page is displayed by setting the </span><span class="src-doc-inlinetag">{@link ActiveIndex}</span><span class="src-doc"> property.</span></li>
<li><a name="a2859"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2860"></a><span class="src-doc"> */</span></li>
<li><a name="a2861"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpPageControl.html">TTpPageControl</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2862"></a><span class="src-sym">{</span></li>
<li><a name="a2863"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2864"></a><span class="src-doc">   * The index of the page that will be displayed.</span></li>
<li><a name="a2865"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">Integer </span><span class="src-doc">One-based, e.g. first page is index 1.</span></li>
<li><a name="a2866"></a><span class="src-doc">   */</span></li>
<li><a name="a2867"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpPageControl.html#var$ActiveIndex">$ActiveIndex</a><span class="src-sym">;</span></li>
<li><a name="a2868"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2869"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2870"></a><span class="src-doc">   */</span></li>
<li><a name="a2871"></a>  <span class="src-key">function </span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2872"></a>  <span class="src-sym">{</span></li>
<li><a name="a2873"></a>    <span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">Init</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2874"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPageControl.html#var$ActiveIndex">ActiveIndex</a> = <span class="src-num">1</span><span class="src-sym">;</span></li>
<li><a name="a2875"></a>  <span class="src-sym">}</span></li>
<li><a name="a2876"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2877"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2878"></a><span class="src-doc">   */</span></li>
<li><a name="a2879"></a>  <span class="src-key">function </span><span class="src-id">GetSheetNamePrefix</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2880"></a>  <span class="src-sym">{</span></li>
<li><a name="a2881"></a>    <span class="src-key">return </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a> . <span class="src-str">'Sheet_'</span><span class="src-sym">;</span></li>
<li><a name="a2882"></a>  <span class="src-sym">}</span></li>
<li><a name="a2883"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2884"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2885"></a><span class="src-doc">   */</span></li>
<li><a name="a2886"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2887"></a>  <span class="src-sym">{</span></li>
<li><a name="a2888"></a>    <span class="src-var">$as </span>= <span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">GetSheetNamePrefix</span><span class="src-sym">(</span><span class="src-sym">) </span>. (string)<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpPageControl.html#var$ActiveIndex">ActiveIndex</a><span class="src-sym">;</span></li>
<li><a name="a2889"></a>    <span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-var">$as</span><span class="src-sym">]</span><span class="src-sym">-&gt;</span><span class="src-id">Styles</span><span class="src-sym">[</span><span class="src-str">'display'</span><span class="src-sym">] </span>= <span class="src-str">''</span><span class="src-sym">;</span></li>
<li><a name="a2890"></a>    <span class="src-key">return </span><span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2891"></a>  <span class="src-sym">}</span></li>
<li><a name="a2892"></a><span class="src-sym">}</span></li>
<li><a name="a2893"></a>&nbsp;</li>
<li><a name="a2894"></a><span class="src-doc">/**</span></li>
<li><a name="a2895"></a><span class="src-doc"> * A page module.</span></li>
<li><a name="a2896"></a><span class="src-doc"> * </span><span class="src-doc-coretag">@package</span><span class="src-doc"> TurboPhpLib</span></li>
<li><a name="a2897"></a><span class="src-doc"> */</span></li>
<li><a name="a2898"></a><span class="src-key">class </span><a href="../TurboPhpLib/TTpModule.html">TTpModule</a> <span class="src-key">extends </span><a href="../TurboPhpLib/TTpObj.html#methodTTpObj">TTpObj</a></li>
<li><a name="a2899"></a><span class="src-sym">{</span></li>
<li><a name="a2900"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpModule.html#var$ModulePage">$ModulePage</a><span class="src-sym">;</span></li>
<li><a name="a2901"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2902"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@var </span><span class="src-doc-type">string </span><span class="src-doc">Name of module to include.</span></li>
<li><a name="a2903"></a><span class="src-doc">   */</span></li>
<li><a name="a2904"></a>  <span class="src-key">var </span><a href="../TurboPhpLib/TTpModule.html#var$ModuleName">$ModuleName</a><span class="src-sym">;</span></li>
<li><a name="a2905"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2906"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2907"></a><span class="src-doc">   */</span></li>
<li><a name="a2908"></a>  <span class="src-key">function </span><span class="src-id">AfterParse</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2909"></a>  <span class="src-sym">{</span></li>
<li><a name="a2910"></a>    <span class="src-var">$obj </span>= <a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModuleName">ModuleName</a><span class="src-sym">, </span><span class="src-num">0</span><span class="src-sym">, </span>-<span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2911"></a>    <span class="src-comm">//echo &quot;Looking for object [$obj]&lt;br&gt;&quot;;</span></li>
<li><a name="a2912"></a>    <span class="src-comm">//echo &quot;Including [$this-&gt;ModuleName]&lt;br&gt;&quot;;</span></li>
<li><a name="a2913"></a>    <span class="src-var">$GLOBALS</span><span class="src-sym">[</span><span class="src-id">TPMODULEFLAG</span><span class="src-sym">] </span>= <span class="src-id">true</span><span class="src-sym">;</span></li>
<li><a name="a2914"></a>    <span class="src-inc">include </span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModuleName">ModuleName</a><span class="src-sym">;</span></li>
<li><a name="a2915"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModulePage">ModulePage</a> = <span class="src-sym">&amp;</span>$<span class="src-var">$obj</span><span class="src-sym">;</span></li>
<li><a name="a2916"></a>    <span class="src-comm">//echo 'Marshalled module of class: ' . get_class($this-&gt;ModulePage) . '&lt;br&gt;';</span></li>
<li><a name="a2917"></a>  <span class="src-sym">}</span></li>
<li><a name="a2918"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2919"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2920"></a><span class="src-doc">   */</span></li>
<li><a name="a2921"></a>  <span class="src-key">function </span><span class="src-id">BeforeGeneratePage</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2922"></a>  <span class="src-sym">{</span></li>
<li><a name="a2923"></a>    <span class="src-comm">//echo &quot;BeforeGeneratePage&lt;br&gt;&quot;;</span></li>
<li><a name="a2924"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Blocks</span><span class="src-sym">[</span><span class="src-id">TPPORTABLES</span><span class="src-sym">] </span>.= <span class="src-str">&quot;</span><span class="src-str">&lt;!-- <span class="src-id">module</span>: <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Name">Name</a> --&gt;\n</span><span class="src-str">&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2925"></a>    <span class="src-key">foreach </span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModulePage">ModulePage</a><span class="src-sym">-&gt;</span><span class="src-id">Objects </span><span class="src-key">as </span><span class="src-var">$key </span>=&gt; <span class="src-var">$value</span><span class="src-sym">)</span></li>
<li><a name="a2926"></a>    <span class="src-sym">{</span></li>
<li><a name="a2927"></a>      <span class="src-comm">//echo &quot;Testing [$key] for portability...&lt;br&gt;&quot;;</span></li>
<li><a name="a2928"></a>      <span class="src-key">if </span><span class="src-sym">(</span><a href="http://www.php.net/strncmp">strncmp</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">, </span><span class="src-str">&quot;TpPortable&quot;</span><span class="src-sym">, </span><span class="src-num">10</span><span class="src-sym">) </span>== <span class="src-num">0</span><span class="src-sym">)</span></li>
<li><a name="a2929"></a>      <span class="src-sym">{</span></li>
<li><a name="a2930"></a>        <span class="src-comm">//echo &quot;Attaching content from $this-&gt;Name.$key to header block.&lt;br&gt;&quot;;</span></li>
<li><a name="a2931"></a>        <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Page">Page</a><span class="src-sym">-&gt;</span><span class="src-id">Blocks</span><span class="src-sym">[</span><span class="src-id">TPPORTABLES</span><span class="src-sym">] </span>.=</li>
<li><a name="a2932"></a>          <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModulePage">ModulePage</a><span class="src-sym">-&gt;</span><span class="src-id">InterpolateObject</span><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">) </span>. <span class="src-str">&quot;\n&quot;</span><span class="src-sym">;</span></li>
<li><a name="a2933"></a>      <span class="src-sym">}</span></li>
<li><a name="a2934"></a>    <span class="src-sym">}</span></li>
<li><a name="a2935"></a>  <span class="src-sym">}</span></li>
<li><a name="a2936"></a>  <span class="src-doc">/**</span></li>
<li><a name="a2937"></a><span class="src-doc">   * </span><span class="src-doc-coretag">@access</span><span class="src-doc"> private</span></li>
<li><a name="a2938"></a><span class="src-doc">   */</span></li>
<li><a name="a2939"></a>  <span class="src-key">function </span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span></li>
<li><a name="a2940"></a>  <span class="src-sym">{</span></li>
<li><a name="a2941"></a>    <span class="src-comm">//$GLOBALS[TPMODULEFLAG] = true;</span></li>
<li><a name="a2942"></a>    <span class="src-comm">//echo &quot;Getting TTpModule Content [$this-&gt;ModuleFilename]&lt;br&gt;&quot;;</span></li>
<li><a name="a2943"></a>    <span class="src-comm">//ob_start();</span></li>
<li><a name="a2944"></a>    <span class="src-comm">//include $this-&gt;ModuleName;</span></li>
<li><a name="a2945"></a>    <span class="src-comm">//$this-&gt;Content = ob_get_contents();</span></li>
<li><a name="a2946"></a>    <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpObj.html#var$Content">Content</a> = <span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../TurboPhpLib/TTpModule.html#var$ModulePage">ModulePage</a><span class="src-sym">-&gt;</span><span class="src-id">Generate</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2947"></a>    <span class="src-comm">//$this-&gt;Content = &quot;Getting TTpModule Content [$this-&gt;ModuleFilename]&quot;;</span></li>
<li><a name="a2948"></a>    <span class="src-comm">//ob_end_clean();</span></li>
<li><a name="a2949"></a>    <span class="src-key">return </span><span class="src-id">parent</span><span class="src-sym">::</span><span class="src-id">GetContent</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></li>
<li><a name="a2950"></a>  <span class="src-sym">}</span></li>
<li><a name="a2951"></a><span class="src-sym">}</span></li>
<li><a name="a2952"></a>&nbsp;</li>
<li><a name="a2953"></a><span class="src-php">?&gt;</span></li>
</ol></pre>
</div>
	<p class="notes" id="credit">
		Documentation generated on Sun, 16 Jan 2005 21:18:52 +0000 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0RC3</a>
	</p>
	</body>
</html>